02-JDBC学习手册:JDBC编程步骤【重点重点】

来源:互联网 发布:2016网络彩票开售了 编辑:程序博客网 时间:2024/06/05 06:17

1  注册一个 Driver

注册驱动程序有三种方式:

方式一:Class.forName(“oracle.jdbc.driver.OracleDriver”);

JAVA 规范中明确规定:所有的驱动程序必须在静态初始化代码块中将驱动注册到驱动程序管理器中。


方式二:Driver drv = new oracle.jdbc.driver.OracleDriver();

DriverManager.registerDriver(drv);


方式三:通过设置系统属性 jdbc.drivers,编译时在虚拟机中加载驱动.

javac xxx.java ( 要确保驱动包在 classpath 里)
java –D jdbc.drivers=驱动全名 类名
使用系统属性名,加载驱动 -D 表示为系统属性赋值
附 : mysql 的 Driver 的全名 com.mysql.jdbc.Driver

SQLServer 的 Driver 的全名 com.microsoft.jdbc.sqlserver.SQLServerDriver


  • JDBC 中驱动加载的时序图


以上是 JDBC 中驱动加载的时序图。时序图主要有以下 7 个动作:

1. 客户调用 Class.forName(“XXXDriver”)加载驱动。
2. 此时此驱动类首先在其静态语句块中初始化此驱动的实例。
3. 再向驱动管理器注册此驱动。
4. 客户向驱动管理器 DriverManager 调用 getConnection 方法,
5. DriverManager 调用注册到它上面的能够理解此 URL 的驱动建立一个连接,
6. 在该驱动中建立一个连接,一般会创建一个对应于数据库提供商的 XXXConnection连接对象,
7. 驱动向客户返回此连接对象,不过在客户调用的 getConnection 方法中返回的为一个java.sql.Connection 接口,而具体的驱动返回一个实现 java.sql.Connection 接口的具体类。



2  建立连接

Connection连接是通过 DriverManager的静态方法 getConnection(.....)来得到的,这个方法的实质是把参数传到实际的 Driver 中的 connect()方法中来获得数据库连接的。
Oracle URL 的格式: jdbc:oracle:thin:(协议)@XXX.XXX.X.XXX:XXXX(IP 地址及端口号):XXXXXXX(所使用的库名)
MySql URL 的写法:例: jdbc:mysql://192.168.8.21:3306/test


3  获得一个 Statement  对象

Statement stmt = conn.createStatement();

4  通过 Statement  执行 l Sql  语句

stmt.executeQuery(String sql); //返回一个查询结果集。
stmt.executeUpdate(String sql); //返回值为 int 型,表示影响记录的条数。
将 sql 语句通过连接发送到数据库中执行,以实现对数据库的操作。

5  处理结果集

使用 Connection 对象获得一个 Statement,Statement 中的 executeQuery(String sql) 方法可以使用select语句查询,并且返回一个结果集 ResultSet通过遍历这个结果集,可以获得select语句的查寻结果,ResultSet 的 next()方法会操作一个游标从第一条记录的前面开始读取,直到最后一条记录。executeUpdate(String sql) 方法用于执行 DDL 和 DML 语句,比如可以update,delete 操作。


只有执行 select 语句才有结果集返回。
例: Statement str=con.createStatement(); // 创建 Statement




6 关闭数据库连接 关闭数据库连接(释放资源)

rs.close(); stmt.close(); con.close();
ResultSet Statement Connection  是依次依赖的。
注意:要按先 ResultSet 结果集,后 Statement,最后 Connection 的顺序关闭资源,因为 Statement 和 ResultSet 是需要连接时才可以使用的,所以在使用结束之后有可能其它的 Statement 还需要连接,所以不能现关闭 Connection。


图形演绎编写JDBC程序的一般过程







原创粉丝点击