目前,应用程序与数据库进行信息交换已经非常普遍。因此,一个程序设计语言对数据库开发能力的大小,决定着该语言的流行程度。在JDK 1.1版本之前,Java语言提供的对数据库访问支持的能力是很弱的,编程人员不得不在Java程序中加入C语言的ODBC(Open Database Connectivity)函数调用,这使得Java程序的跨平台发布能力受到很大的限制。JDBC的出现使Java程序对各种数据库的访问能力大大增强。它为Java定义了一个"调用级"(call-level)的SQL接口。这意味着我们可以执行原原本本的SQL语句并且取回结果。通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。JDBC的体系结构如图13-1所示。
图13-1 JDBC的体系结构
由图中可以看出,JDBC API的作用就是屏蔽不同的数据库驱动程序之间的差别,使得程序设计人员有一个标准的、纯Java的数据库程序设计接口,为在Java中访问任意类型的数据库提供技术支持。驱动程序管理器(Driver Manager)为应用程序装载数据库驱动程序。数据库驱动程序是与具体的数据库相关的,用于向数据库提交SQL请求。
JDBC扩展了Java的能力,它和JDBC的结合可以让开发人员在开发数据库应用时真正实现"Write Once,Run Everywhere!"。比如使用Java和JDBC API就可以公布一个Web页面,页面中带有能访问远端数据库的Applet。或者企业可以通过JDBC让全体员工(他们可以使用不同的操作系统,如Windows、Macintosh和UNIX)在Intranet上连接到几个全球数据库上,而这几个全球数据库可以是不相同的。