JDBC概述以及几种驱动程序
JDBC(Java DataBase Connectivity,数据库连接)是用来执行SQL的Java API。开发人员可以使用这些标准API来连接和操作数据库 JDBC是Java的规范,考虑到规范的适用性。JDBC只提供了最最直接的数据库规范。在java.sql包中的类,是Java用于连接数据库的标准的方法。
JDBC有下面的3个产品组件:
1)JDBC驱动程序管理器:是JDBC体系结构的支柱。他实际很小,也很简单,其主要作用是把Java连接到指定的JDBC驱动程序上面,然后退出
2)JDBC驱动程序测试工具:为JDBC驱动程序开发人员的驱动程序提供一定的可信度。只有通过JDBC测试通过的驱动程序才会被认为是符合JDBC的标准的
3)JDBC-ODBC桥:ODBC驱动程序可被用作JDBC驱动程序。它的出现为JDBC的快速开发提供以一条途径,其长远目标是提供一些不常见的DBMS的访问方法。
常见的JDBC驱动程序分为以下几个类:
(1)JDBC-ODBC桥+ODBC驱动程序
JavaSoft桥产品利用ODBC驱动程序提供JDBC访问。注意,必须将ODBC二进制代码(许多情况下还包括数据库客户机代码)加载到使
用该驱动程序的每个客户机上。因此,这种类型的驱动程序最适合于企业网(这种网络上客户机的安装不是主要问题),或者是用Java编
写的三层结构的应用程序服务器代码。
(2)本地API
这种类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其它DBMS的调用。注意,象桥驱动程序一
样,这种类型的驱动程序要求将某些二进制代码加载到每台客户机上。
(3)JDBC网络纯Java驱动程序 这种驱动程序将JDBC转换为与DBMS无关的网络协议,之后这种协议又被某个服务器转换为一种DBMS协议。这种网络服务器中间件能
够将它的纯Java客户机连接到多种不同的数据库上。所用的具体协议取决于提供者。通常,这是最为灵活的JDBC驱动程序。有可能所有这
种解决方案的提供者都提供适合于Intranet用的产品。为了使这些产品也支持Internet访问,它们必须处理Web所提出的安全性、通过防
火墙的访问等方面的额外要求。几家提供者正将JDBC驱动程序加到他们现有的数据库中间件产品中。
(4)本地协议纯Java驱动程序 这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。这将允许从客户机机器上直接调用DBMS服务器,是Intranet访问的一个很实用的解决方法。由于许多这样的协议都是专用的,因此数据库提供者自己将是主要来源,有几家提供者已在着手做这件事
了。
据专家预计第(3)、(4)类驱动程序将成为从JDBC访问数据库的首方法。第(1)、(2)类驱动程序在直接的纯Java驱动程序还
没有上市前会作为过渡方案来使用。对第(1)、(2)类驱动程序可能会有一些变种,这些变种要求有连接器,但通常这些是更加不可取
的解决方案。第(3)、(4)类驱动程序提供了Java的所有优点,包括自动安装(例如,通过使用JDBC驱动程序的appletapplet来下载
该驱动程序)。