JDBC技术浅析
2011-01-26靳晋
靳晋
德州职业技术学院 山东德州 253034
JDBC技术浅析
靳晋
德州职业技术学院 山东德州 253034
JDBC是J2EE的一个重要组成部分,也是软件开发人员经常使用的一项重要技术。掌握JDBC对于Java软件开发人员来说,是一个非常重要的技能。
JDBC;API;连接池
JDBC即Java DataBase Connectivity,它是由一系列Java接口规范组成的、用于访问数据库的标准。JDBC是由Sun定义的一组接口,由数据库厂商来实现,规定了Java开发人员访问数据库所使用的方法的调用规范。
1 JDBC的概述
Java语言自1995年正式公布后,风靡全球,出现大量用Java语言编写的程序,其中包括数据库应用程序。JDBC是Java与数据库的接口规范,它由一些Java语言编写的类和接口组成,旨在让各数据库开发商为Java程序员提供标准的数据库API。目前比较常见的JDBC驱动程序可分为4种类型。
第一种类型的驱动程序的实现是通过将JDBC的调用全部委托给其他编程接口来实现的,比如ODBC。这种类型的驱动程序需要安装本地代码库,即依赖于本地的程序,所以便携性较差,比如JDBC-ODBC桥驱动程序。
第二种类型的驱动程序的实现是部分基于Java语言的,即该驱动程序一部分是用Java语言编写,其他部分委托本地的数据库的客户端代码来实现。
第三种类型的驱动程序的实现是全部基于Java语言的,该类型的驱动程序通常由某个中间件服务器提供,这样客户端程序可以使用与数据库无关的协议和中间件服务器进行通信,中间件服务器再将客户端的JDBC调用转发给数据库进行处理。
第四种类型的驱动程序的实现是全部基于Java语言的,该类型的驱动程序中包含特定数据库的访问协议,使得客户端可以直接和数据库进行通信。
2 JDBC的API
JDBC定义了一个支持标准SQL功能的通用低层的应用程序编程接口(API),JDBC API的核心组件有DriverManager类、Connection接口、Statement接口和ResultSet接口。4个接口的作用:1)DriverManager类用于跟踪JDBC驱动程序并生成数据库连接;2)Connection接口用于取得数据库信息,生成数据库语句并管理数据库连接;3)Statement接口在基层连接运行SQL语句,生成结果集;4)ResultSet接口用于访问SQL语句返回的数据,在读取结果时可以使用next()方法定义每行数据并通过get()方法读取数据。
JDBC主要用于数据库连接,下面是其访问数据库的步骤。
1)将数据库的JDBC驱动加载到classpath中,在基于JAVAEE的Web应用实际开发过程中,通常要把目标数据库产品的JDBC驱动复制到WEB-INF/lib下。
2)加载JDBC驱动,并将其注册到DriverManager中,以SQLServer数据库连接为例, Java代码如下:
5)执行SQL语句。
6)访问结果记录集ResultSet对象。
7)依次将ResultSet、Statement、PreparedStatement、Connection对象关闭,释放所占用的资源。
注意:最后两个步骤必须要做,因为这些资源不会自动释放,必须要自己关闭。
3 JDBC事物处理
JDBC事务处理可以通过setAutoCommit()来设定自动提交事务,也可以通过Statement的addBatch()、executeBatch()的方式来批量处理操作并执行事务。
4 JDBC连接池
JDBC数据连接池允许在一个项目中,根据配置,指向不同类型的不同数据库,这样可以实现数据的分布式存储,从而更高效地与后台交互。JDBC连接池可以定义数据库的最大(小)连接数、数据超时等。
Java语言及其技术是当今世界程序设计语言的主流,应用Java技术实现数据库应用系统是未来的发展方向。JDBC随着Java的发展,会更完善成熟,发挥更重要的作用。
TP311.13
B
1671-489X(2011)03-0091-01
10.3969/j.issn.1671-489X.2011.03.091