从上图中可以看出,JDBC的实现包括三部分。
(1)JDBC驱动管理器:负责注册特定的JDBC驱动器,主要通过java.sql. Driver Manager类实现。
(2)JDBC驱动器API:由Sun公司负责制定,其中最主要的接口是java.sql. Driver接口。
(3)JDBC驱动器:它是一种数据库驱动,由数据库厂商创建,也称为JDBC驱动程序JDBC驱动器实现了JDBC驱动器API,负责与特定的数据库连接,以及处理通信细节。
2、JDBC常用API
在开发JDBC程序前,首先了解一下JDBC常用的API。JDBC API主要位于java.sql包中,该包定义了一系列访问数据库的接口和类,具体如下。
1. Driver接口
Driver接口是所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。在编写JDBC程序时,必须要把指定数据库驱动程序或类库加载到项目的classpath中。
2. DriverManager类
Driver Manager类用于加载JDBC驱动并且创建与数据库的连接。在Driver Manager类中,定义了两个比较重要的静态方法。如表所示:
registerDriver(Driver driver)
该方法用于向 DriverManager中注册给定的JDBC驱动程程序
getConnection(String url,String user,String pwd)
该方法用于建立和数据库的连接,并返回表示连接的 Connection对象
3、Connection接口
Connection接口代表Java程序和数据库的连接,在Connection接口中,定义了一系列方法
getMetaData()
该方法用于返回表示数据库的元数据的 DatabaseMetaData对象
createStatement()
用于创建一个Statement对象来将SQL语句发送到数据库
prepareStatement(String sql)
用于创建一个PreparedStatement对象来将参数化的SQL语句发送到数据库
prepareCall(String sql)
用于创建一个CallableStatement对象来调用数据库存储过程
4、Statement接口
Statement接口用于向数据库发送SQL语句,在Statement接口中,提供了三个执行SQL语句的方法,具体如表所示。
execute(String sql)
用于执行各种SQL语句,该方法返回一个boolean类型的值,如果为true,表示所执行的SQL语句具备查询结果,可通过Statement的getResultSet方法获得查询结果。
executeUpdate(String sql)
用于执行SQL中的Insert、update和delete语句。该方法返回一个int类型的值,表示数据库中受该SQL语句影响的记录的数目。
executeQuery(String sql)
用于执行SQL中的select语句,该方法返回一个表示查询结果的ResultSet对象