荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Peter (小飞侠), 信区: Program
标  题: Java与DB2数据库连接(上)
发信站: BBS 荔园晨风站 (Thu Jan 21 23:09:02 1999), 转信


  随着Web的迅猛发展,数据库连接产品与Internet/Intranet的结合
已成为一种典型的计算模式,Java的兴起又为这一领域的发展提供了
更为有效的支持。Java发明者Sun微系统公司的子公司Javasoft适时
推出了Java数据库连接规范——JDBC(Java Database Connectivity
),于是各数据库厂商纷纷遵循这一规范研制和开发各自数据库产品对
Java的支持。在这一方面IBM公司始终走在最前面,其DB2系列产品是
最先提供Java支持的产品之一。
    DB2对Java语言的支持包括以下两个方面:
    ·开发用于访问DB2数据库的Java应用程序(Application)和Java
小应用程序(Applet)。
    ·创建用户定义函数(UDF:User-Defined Function)和存储过程(
Stored Procedure)。
    本文简要介绍JDBC的原理、实现及应用,并以DB2为例说明如何通
过JDBC在Java程序中对数据库进行访问。

    JDBC的工作原理
    利用Java编程语言访问数据库是通过JDBC——Java Database Co
nnectivity,即Java数据库连接机制实现的。JDBC是一种Java数据库
连接API(Application Programming Interfc e:应用编程接口),它作
为Java Enterprise API的一部分由JavaSoft于1996年5月推出。JBC
为Java程序员提供了一种在Java代码中访问关系数据库的标准方法。
    JDBC的设计基于X/Open SQL CLI(Call Level Interface)这一模
型。JDBC定义了一组P I对象和方法用于同基本数据库进行交互。一
个Java程序要访问数据库,需通过以下几步来完成:第一,打开一数据
库连接;第二,建立语句对象;第三,通过该语句对象将SQL语句传送给
数据库,进行数据库操作;第四,获取结果及有关结果集的信息。
    JDBC的实现
    JDBC的实现包括两个方面,一个是JDBC API,一个是数据库方的JD
BC驱动程序支持。
    JDBC API的所有实现都包含在java.sql包中,即该包中包括了JDB
C API的所有类和方法。表1给出了JDBC所有类及其功能的简要说明。
    在这些类中最为重要的几部分及其关系见图1。图1 JDBC几个重
要的类及其关系
    可以看出最上层的类为DriverManager。这个类用于处理驱动程
序的装入,为新数据库连接的建立提供支持。一个驱动程序装载时,它
要向该类进行注册。当要打开一个连接时,该类就会根据JDBC URL选
择驱动程序(后面将会谈到JDBC URL)。
    java.sql.Connection  表示一个到特定数据库的连接。
    java.sql.Statement  在一个给定的连接中,为执行一条SQL语句
提供一个容器。
    java.sql.Statement接口有两个重要的子类型:一个是java.sql.
PrepareStatement,用于执行预编译的SQL语句;一个是java.sql.Call
ableStatement,用于调用数据存储过程。
    java.sql.ResultSet用于控制结果列的存取。
    JDBC API驱动程序用于提供与数据源的接口,解释和执行来自应
用程序中的SQL语句,并返回结果。它既可全部用Java编写,作为Apple
t的一部分在网上下载,又可以是一种本地模块,与现有数据库建立起
桥接关系。例如,由Sun和Intersolv合作开发的JDBC-ODBC Bridge-JB
CODBC.DLL(用于Windows下)就是一种JDBC到ODBC的转换模块,用它可
以实现对支持ODBC的数据库的访问。
    编程人员并不需要知道数据库方JDBC驱动程序的细节,而只需关
心用于指定所要访问的数据源的URL。JDBC URL的格式如下:
    jdbc:<subprotocol>:<subname>
    subprotocol是指一种由一个或多个驱动程序支持的数据库连接
机制。例如,DB2数据库的subprotocol为db2。其JDBC URL格式如下:
    jdbc:db2:数据源名
    或:
    jdbc:db2:主机名:端口号/数据源名
    又如,ODBC类型的数据源,其subprotocol为odbc。一般的ODBC数
据库JDBC URL格式如下
    jdbc:odbc:<ODBC 数据源名>;User=<用户名>;PW=<口令>
    对于Internet/Intranet上的数据库,subname指的是包含网络URL
的数据源名,其格式如下:
    //主机名:端口号/数据源名

    JDBC应用方案
    JDBC有两种常用的应用方式:一种是Java Applet,一种是Java Ap
plication。
    Applet是作为Web文档的一部分在网络上进行传输的小应用程序,
是Java语言目前应用较为活跃的一面。用于数据库访问的Applet正是
使用JDBC来与数据库进行交互的,如图2: 图2 JDBC Applet与数据库
的交互
    Java也能用来建立通常的应用程序,即Java Application。这种
独立的应用通常可以位于客户机上,其最常用的方式是应用在企业Int
ranet中,见图3: 表1 JDBC AIP及其功能秒述
图3 JDBC Application与数据库的交互
    Java Application与Applet存在着许多方面的差异。例如,Java
Application定义数据库最常用的方式是由用户或应用程序声明一个
数据库名,即由系统来寻找指定的机器、DBM、JDBC驱动程序和数据库
。而Java Applet是在程序中直接指定这些内容的。
    但不论是Java Applet还是Java Application,访问数据库的步骤
基本类似。下文将通过基于DB2数据库访问的Java Applet和Java App
lication具体说明JDBC的应用。
    编者注:本文共分三个部分:"JDBC简介"、"编写基于DB2的Java A
pplication和Java Ap let"、"编译和运行基于DB2的Java Applicati
on和Java Applet"。由于篇幅较长,故分三期连载。

--
※ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 192.168.1.3]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店