JDBC基础

来源:互联网 发布:淘宝二级词是什么 编辑:程序博客网 时间:2024/05/22 22:35

JDBC基础

(一)、

1、在使用JDBC之前应该先导入jar包:mysql-connector-java-5.1.5-bin.jar。

2、连接数据库需要四个参数:

驱动:如:com.mysql.jdbc.Driver(导入连接数据库驱动)。

数据库的路径:如:jdbc:mysql://localhost:3306/txt?characterEncoding=UTF-8(jdbc:mysql://本机IP:端口号/数据库名?传递编码方式)。

数据库账号:如:root(这里为本人数据库名)。

密码:(本人密码为空,个位可以根据自己的密码填写)。

3、通过Class.forName(驱动):导入驱动

4、通过Connection连接数据库,如:DriverManager.getConnection(数据库的路径,数据库的路径 ,数据库的路径).

5、通过Statement对SQL语句操作(这可能会有注入问题),如:conn.createStatement()(conn为Connection连接数据库后的对象)。

6、增删改一般使用executeUpdate()方法,返回受影响的行数st.executeUpdate(sql);(st为Statement的对象,sql可以是增删改的任意语句)。

7、判断executeUpdate()是否等于0,(等于0位没有操作成功)

8、查看使用st.executeQuery(sql)返回查询的值,返回的值为ResultSet型的,(所以后面关闭的时候先关ResultSet)(st为Statement的对象,sql可以是增删改的任意语句)

9、通过rs.next() 来查看下一个值是否为空为空则返回false,然后给user赋值,如:

while(rs.next()){
User user = new User();
user.setUserId(rs.getInt("userId"));
user.setUsername(rs.getString("username"));
user.setSex(rs.getInt("sex"));
user.setPassword(rs.getString("password"));
user.setFlag(rs.getInt("flag"));
}

10 、在使用完后需要关闭你打开的接口,按照先开后关的原则。

(二)、

1、之前提到注入问题,可以通过prepareStatement来解决,具体用法如: conn.prepareStatement(sql);(conn为Connection连接数据库后的对象,之所以这里要输操作语句是为了预编译节约了时间)

2、JDBC还有一个事务问题conn.setAutoCommit(false);表示手动开始事务,conn.commit();提交事务,conn.rollback();回滚事务

注:本文编写以Mysql为基础

原创粉丝点击