JDBC-1

1.DriverManager驱动加载:

要实现JDBC的连接,需要提供指定数据库的URL。通常的标准做法:调用DriverManager的getConnection方法。该方法中含有三个重要参数:数据库的URL,连接用户名和密码。

DriverManager中注册驱动的方式:

1).调用方法Class.forName:可显式加载驱动程序类。与外部设置无关(推荐)。

Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
String Url = "jdbc.mysql://localhost:3306/cap";//数据库连接子协议

2).将驱动程序添加到java.lang.System的属性jdbc.drivers中

<%
//系统属性指定数据库驱动列表
System.setProperty("jdbc.driver","com.mysql.jdbc.Driver:oracle.jdbc.driver.OracleDriver");
//数据库子协议
String Url = "jdbc:mysql://localhost:3306/cap";
%>

3).通过创建驱动对象来加载数据库驱动:

new com.mysql.jdbc.Driver();//创建driver对象,加载数据库驱动
String Url = "jdbc:mysql://localhost:3306/cap";//数据库连接子协议

2.建立连接:

加载Driver类,并在DriverManager类中注册后,它们即可用来与数据库建立连接。当调用DriverManager.getConnection方法发出的连接请求时,DriverManager将检查每个驱动程序,查看它是否可以建立连接。

3.发送sql语句:

Statement对象用于将sql语句发送到数据库中。实际,有三种Statement对象,它们都作为在给定连接上执行sql语句的包容器:Statement,PreparedStatement(从Statement继承而来),CallableStatement(从PreparedStatement继承而来)。它们都专用于发送特定类型的sql语句:Statement对象用于执行不带参数的简单sql语句;PreparedStatement对象用于执行带或不带IN参数的预编译sql语句;CallableStatement对象用于执行对数据库已存储过程的调用。Statement接口提供了执行语句与获取结果的基本方法;PreparedStatement接口添加了处理IN参数的方法;CallableStatement添加了处理OUT参数的方法。

创建Statement对象:

Connection conn = DriverManager.getConnection(dbUrl,dbUser,dbPwd);
String sql = "select * from book order by bookid";
Statement stmt = conn.createStatement();

为了执行Statement对象,被发送的数据库的sql语句将被作为参数提供给Statement的方法,代码如下:

ResultSet rs = stmt.executeQuery(sql);

4.使用执行语句:

Statement接口提供了三种执行sql语句的方法:executeQuery,executeUpdate和execute。使用哪一个由sql语句所产生的内容决定。

execute方法用来执行任意的sql语句查询,如果查询的结果是一个ResultSet,方法就返回true。如果结果不是ResultSet,比如是insert或者update查询,就会返回false。可以通过它的getResultSet方法来获取ResultSet,或者通过getUpdateCount()来获取更新的记录条数。

executeQuery方法用于产生单个结果集的语句,例如select语句。

executeUpdate方法用于执行INSERT,UPDATE,或DELETE语句以及SQL DDL(数据定义语句),例如:create table 或 drop table。insert,update,delete语句的效果是修改表中的零行或者多行中的一列或者多列。executeUpdate的返回值是一个整数表示受影响的行数(即更新计数)。对于create table或drop table等不操作行的语句,executeUpdate的返回值是零。

5.语句完成:

当连接处于自动提交模式时,其中的所执行的语句在完成时将自动提交或还原。

6.关闭对象:

Statement对象由javal垃圾收集程序自动关闭。

posted @ 2017-11-08 13:25  小仙女63  阅读(189)  评论(0编辑  收藏  举报