Java的应用程序员通过sql包中定义的一系列抽象类对数据库进行操作,而实现这些抽象类,实际完成操作,则是由数据库驱动器Driver运行的。JDBC的Driver可分为以下四种类型:
1. JDBC-ODBC Bridge和ODBC Driver
每一台客户机都装入ODBC的驱动器。它的优点是可以访问ODBC能访问的所有数据库,缺点是执行效率比较低。
2. Native-API partly-Java Driver
这种驱动器将标准的JDBC调用转变为对数据库API的本地调,该类型的驱动程序是本地部分Java技术性能的本机API驱动程序。各客户机使用的数据库可能是Oracle,可能是Sybase,也可能是Access,都需要在客户机上装有相应DBMS的驱动程序。这些驱动程序大多数都提供比使用JDBC-ODBC驱动程序更好的性能。
3. JDBC-Net All-Java Driver
这种驱动器将JDBC指令转化成独立于DBMS的网络协议形式,再由服务器转化为特定DBMS的协议形式。
4. Native-protocol All-Java Driver
这种驱动器将JDBC指令转化成网络协议后不再转换,由DBMS直接使用。相当于客户机直接与服务器联系,对局域网适用。
对于第二、第三、第四类驱动器采用的是直接连接,
使用直接连接时必须在完成对数据库的操作后将连接关闭。否则,太多的连接将导致系统性能下降甚至超过数据库服务器的连接限制,以至于其他程序无法建立到数据库服务器的连接。
在这四种驱动器中,后两类“纯Java”(All-Java)的驱动器效率更高,也更具有通用性。但目前第一、第二类驱动器比较容易获得,使用也较普遍。
本帐簿管理系统采用第二类驱动器,它比较容易获得,并且只要机器上安装了JDBC驱动程序,可以不配置数据源,只要在数据库程序中加载JDBC驱动程序,设置连接参数,就可以连接数据库,运行程序。比较简单、方便,执行效率也比较高。以本系统为例,将连接代码放在一个类DB的构造函数DB()中,连接数据库KEMU1时只要生成该类的一个对象即可.