什么是JDBC
JDBC全称Java Database Connectivity。Java数据库连接。
JDBC是一组API,各数据库厂商提供自己的实现类,也就是数据库驱动。
这样Java程序猿就能够使用同一种API操作不同的数据库。须要做的仅仅是导入对应的数据库驱动。
JDBC做了什么事
(1)连接数据库
(2)运行SQL语句
(3)处理返回结果
JDBC API简单介绍
1. DriverManager
主要用于获取Connection对象。
2. Connection
代表数据库连接对象,每一个Connection代表一个物理连接会话。要訪问数据库,必须先获取数据库连接。
3. Statement
用于运行SQL语句。
4. PreparedStatement
PrepatedStatement是Statement的子接口。
5. ResultSet
结果集对象。
当中包括了訪问查询结果集的方法。
JDBC入门编程步骤
package com.weiheli; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbcDemo001 { public static void main(String[] args) throws SQLException { try { // 第一步、载入数据库驱动 Class.forName("com.mysql.jdbc.Driver"); // 第二步、连接数据库 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/test", "root", ""); // 第三步、得到Statement对象 Statement stmt = conn.createStatement(); // 第四步、发送SQL语句 ResultSet rs = stmt.executeQuery("select * from company"); // 第五步、操作结果集 while(rs.next()) { System.out.println(rs.getInt(1) + " " + rs.getString(2)); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
java.sql和com.mysql.jdbc
在编写上面的代码时,发现Connection和Statement会出如今两个包中:java.sql和com.mysql.jdbc,该导入哪个?这两个包的关系是:
com.mysql.jdbc.Connection extends java.sql.Connection com.mysql.jdbc.Statement extends java.sql.Statement
可能是com.mysql.jdbc.*对java.sql.*做了优化。
但使用java.sql.*没有兼容性问题。
总结
至此,JDBC已经入门。
接下来。会介绍JDBC的各种高级特性。
下篇预告:JDBC高级