SHTTP)同数据库访问服务器通信,数据库访问服务器然后翻译标准网络协议成为数据库厂商的专有特殊数据库访问协议(也可能用到ODBC driver)与数据库通信。对Internet 和Intranet 用户而言这是一个理想的解决方案。Java driver 被自动的,以透明的方式随Applets自Web服务器而
下载并安装在用户的
计算机上。
(4) Native-protocol pure Java driver方式:这种方式也是纯Java driver。数据库厂商提供了特殊的JDBC协议使Java数据库客户与数据库服务器通信。然而,将把代理协议同数据库服务器通信改用数据库厂商的特殊JDBC driver。这对Intranet 应用是高效的,可是数据库厂商的协议可能不被防火墙支持,缺乏防火墙支持在Internet 应用中会存在潜在的安全隐患。
综上四种方式中,只有第三、四种方式的驱动支持 Applet的零安装。因为JDBC drivers 完全用Java 写成,并从Web 服务器上随applet
下载。为了支持零安装,驱动
程序应该被放在Web上,并与applet 在相同目录。而第四种存在安全隐患,第三种产品为数不多,现今较成熟的IDS JDBC driver属于此种(http://www.idssoftware.com),但也要用到ODBC driver辅助。
即便如此,利用Java技术开发单机环境应用程序,局域网范围或Intranet环境下的应用
程序、动态Web应用(Live Intranet)等,Java语言是高效、安全、稳定的。Java语言已赢得了众多厂商的支持,基于其上的Java API-JDBC也发展迅速。Sun承诺任何Java Applet 或Java应用软件都能够与数据库结合,并且仍将不遗余力的支持未来Java技术的发展。Java语言的跨平台特性,使之成为Internet和Intranet环境下开发数据库应用系统的理想选择方案。
二、 Java 数据库应用系统的实现
基于此,笔者用Java 2 SDK,Standard Edition Version 1.2.1版本为开发工具,以已经成功开发的Java数据库应用系统案例为
模板,结合Java2
程序语句及java.sql包,介绍一下Java数据库应用系统开发的具体实现步骤、方法等。
1.设置数据库的连接
为了利用JDBC,你将需要一个数据库服务器和一个数据库驱动器。因为大多数读者的
计算机已经安装了Windows95/98,我就用微软的 Access 97做为我的数据库服务器(具体为Action.mdb),当然你也可以用其它的数据库作为数据库服务器。因为对JDBC而言,数据库服务器的类型无关紧要,JDBC会提供一个独立于数据库服务器的访问数据库的方法。这是JDBC的主要优势所在。
你将还需要一个数据库驱动器,用来提供JDBC与你的数据库的连接。作者选用了较可能的JDBC-ODBC bridge 方式。为此需设置32-bit ODBC的数据源,选择System DSN(数据可被多用户访问,User DSN不同),增加新的数据源,配置新数据源的路径为Action.mdb数据库服务器的所在位置。
安装完成,Java程序员可以进行编制程序的阶段。首先
程序员引用java.sql 包中相应的类与接口来进行对JDBC驱动器的管理:用Class 类中的 forName() 方法装入 JDBC驱动器,以JDBC-ODBC bridge 方式为例,装入JDBC驱动执行的语句为Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);用DriverManager 类中getDrivers()方法返回所有安装在你的
计算机中的JDBC驱动器,getConnection()建立与数据库的连接等。getConnection()方法提供下面三种形式:
getConnection(String url)
getConnection(String url,String userID,String password)
getConnection(String url,Properties arguments)
其中字符串url表示数据库服务器所在处的特殊的URL。URL是被用来与不同的数据库驱动建立连接的统一网络资源,其形式如下:
jdbc:subprotocol:subname
所有的JDBC数据库协议开始于jdbc:。Subprotocol是被用来辨别JDBC驱动方式的。例如:JDBC-ODBC bridge 用jdbc:odbc:subname 这种用户协议形式,IDS JDBC driver 用jdbc:ids:subname 形式