北京理工大学计算机学院
金旭亮
JDBC是“Java DataBase Connectivity”的缩写,是一组API ,
Java应用程序可以通过它来访问关系型数据库。
JDBC最初是在1997年与JDK1.1一起发布的,在以后所有发布的
版本中,JDBC都是不可或缺的组成部份。
当前,JDBC主要用于使用Java EE (Java Enterprise Edition )
开发的Web应用,或者是使用JSE (Java Standard Edition )开
发的桌面应用。
Android应用虽然也主要使用Java 开发,但它通常直接
使用嵌入式数据库SQLite存储数据,并且提供了封装
好的API ,更有些可用于Android 的数据存取框架,抽
象层次更高,所以在实际的Android 开发中,很少有这
个需要直接调用JDBC 。
有许多Java技术框架在底层使用JDBC作为数据存取引擎,如:
Spring 中的JDBCTemplate :大幅度地简化了JDBC代码的编写过
程
RIFE :一个开源的用于快速开发Java Web应用的基于组件的框架
Hibernate :一个著名的Object-RelationMap框架
MyBatis :Apache开源项目,将SQL查询结果直接转换为Java对象。
JPA (Java Persistence API ):Java EE 中的对象持久化接口,把对
象保存到底层数据库中。
JDBC驱动是Java应用与数据库之间媒介,Java SE中定义了JDBC
API ,所有希望能被Java访问的数据库,都需要提供实现了JDBC
API的驱动程序。
JDBC API定义了一组对象与接口 (比如Connection ,ResultSet ,
Statement等),其具体实现由具体的数据库厂商所提供的驱动程
序负责。
Java应用只需在选择好合适的驱动程序之后,直接使用上层的
Connection等对象进行开发,而无需理会不同数据库在底层技术
上的差异。
JDBC-ODBC bridge :
这是一个历史悠久的技术,允许Java 应用通过
一个“桥接驱动”,间接地使用ODBC驱动访
问数据库。
之所以提供这样的一个桥接驱动,是因为当
JDBC 推出时,ODBC 己被广泛应用,各种数
据库厂商都己经提供了现成的ODBC驱动。
JDBC -ODBC桥接驱动使得Java 应用能直接使
用这些现成的ODBC驱动而无需等待数据库厂
商开发出新的直接针对JDBC 的驱动。
这种方式的性能较低。
Native API
数据库厂商针对JDBC 开发出驱动程序,这
些驱动程序在底层直接调用底层数据库管理
系统所提供的功能。
数据库与Java 应用通常位于同一台计算机上。
这种方式,能提供比“JDBC -ODBC桥”更
好的性能。
All java/network-protocol Driver