一.什么是JDBC
JDBC的全称是Java数据库连接(Java Dalabase Connectivity),它是一套用于执行soL语句的Java API应用程序可通过这套API连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询、更新、新增和删除的操作。
不同种类的数据库(如MySQL、Oracle 等)在其内部处理数据的方式是不同的。如果直接使用数据库厂商提供的访问接口操作数据库,应用程序的可移植性就会变得很差。例如,用户当前在程序中使用的是MySQL提供的接口操作数据库,如果换成Oracle数据库,则需要重新使用Oracle数据库提供的接口,这样代码的改动量会非常大。有了JDBC后,这种情况就不复存在了,因为它要求各个数据库厂商按照统一的规范来提供数据库驱动,而在程序中是由JDBC 和具体的数据库驱动联系,所以用户就不必直接与底层的数据库交互,这使得代码的通用性更强。
JDBC在应用程序与数据库之间起到了一个桥梁作用。当应用程序使用,JDBC访问特定的数据库时,需要通过不同数据库驱动与不同的数据库进行连接,连接后即可对该数据库进行相应的操作作。
二.JDBC常用的API
在开发JDBC程序前,该包定义了一系列访问数据库的接口和关。常 用的API。JDBC API主要位于 java.sql包中,该包定义了一系列数据库的接口和类。
1 Driver 接口
Driver接口是所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。锅要注意的是,在编写JDBC程序时,必须要把所使用的数据库驱动程序或类库加载到项目的classpath中.
三、 实现第一个JDBC程序
JDBC的使用可以按照以下几个步骤进行。
(1)加载并注册数据库驱动
注册数据库驱动的具体方式如下。
(2) 通过Connection对象获取Statement对象
Connection 创建Statement的方式有如下3种。
cealetatement): 创建基本的Slatement对象。
prepareStatement():PreparedStatement 对象。
prepareCall(:创建allableStatement对象。
(4)使用Statement执行SQL语
所有的Stalement都有如下3种执行SQL语句的方法。
execule(): 可以执行任何SQL语句。
exctueuery):通常执行查询语句,执行后返回代表结果集的ResulSet对象。. execueupate): 主要用于执行DML和DDL语句。执行DML语句,如INSERT、UPDATE或DELETE时,返回受SQL语句影响的行数,执行DDL语句返回0。
(5)操作ResultSet结果集
如果执行的SQL语句是查询语句,执行结果将返回一个ResultSet 对象,该对象里保存了SQL语句查询的结果。程序可以通过操作该ResultSet对象来取出查询结果。
(6)关闭连接,释放资源
每次操作数据库结束后都要关闭数据库连接,释放资源,包括关闭ResultSet、 Statement和Connection等资源。
至此,JDBC程序的大致实现步骤已经讲解完成。接下来,依照上面所讲解的步骤来演示JDBC的使用。该程序从users表中读取数据,并将结果打印在控制台。具体操作如下:
①搭建数据库环境
在MySQL中创建一一个名称为jdbc 的数据库,然后在该数据库中创建一一个users数据库和表的如下所示。数据库和表创建成功后,再向users表中插入3条数据,插入的SQL语句如下所示。
编写JDBC程序
a.注册驱动
b.释放资源
在项目chapter09的srC目录下,新建一一个名称为cn.itcast.jdbc.example的包,在该包中创建类Example01,该类用于读取数据库中的users表,并将结果输出到控制台,如下图所示。