采用JDBC连接数据库的基本过程:
1.加载JDBC驱动程序,有以下三种方式;
1)Class.forName("com.mysql.jdbc.Driver");
注意:这里try抛出的异常为ClassNotFoundException 异常。
2)Driver drv=new com.mysql.jdbc.Driver();
DriverManager.registerDriver(drv);
注意:采用这种方法跑出的是SQLException 异常。
3)编译时在虚拟机中加载驱动(感觉比较高端)
javac -Djdbc.Drivers=com.mysql.jdbc.Driver XXX.java
java -D jdbc.drivers=com.mysql.jdbc.Driver XXX
2.建立连接
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/Test","root","123");
3.创建一个Statement
Statement stmt= conn.createStatement();
4.通过Statment执行Sql语句
stmt.executeQuery(String sql); 返回一个查询结果集(ResultSet)
stmt.executeUpdate(String sql); 返回值为int型,表示影响到的记录条数
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
Stringsql=”insert into test(id,name) values(1,”+”’”+”test”+”’”+”)”;
str. executeUpdate(sql);//执行Sql语句
String sql=”select * from test”;
ResultSet rs=str. executeQuery(String sql);//执行Sql语句,执行select语句后有结果集
//遍历处理结果集信息
while(rs.next()){
System.out.println(rs.getInt(“id”));
System.out.println(rs.getString(“name”))
}
6.关闭连接,释放资源
rs.close(); sta.close(); con.close();
ResultSet Statement Connection是依次依赖的。
注意:要按先ResultSet结果集,后Statement,最后Connection的顺序关闭资源,因为Statement和ResultSet是需要连接时才可以使用的,所以在使用结束之后有可能其它的Statement还需要连接,所以不能现关闭Connection。
下面这幅图,描述了JDBC程序的一般过程:
关于如何上传图片,参考:http://topic.csdn.net/u/20090520/23/f5aa9053-acef-458a-a656-c49444a68eba.html
向各位大大学习 O(∩_∩)O