欢迎来到天天文库
浏览记录
ID:51597963
大小:805.55 KB
页数:96页
时间:2020-03-25
《java程序设计教程第11章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第11章数据库编程11.1JDBC技术简介11.2JDBC的结构11.3JDBC驱动程序的类型11.4JDBC在数据库访问中的应用11.5JDBC综合应用示例本章小结习题11.1JDBC技术简介JDBC(JavaDataBaseConnectivity)是Java语言为了支持SQL功能而提供的与数据库相连的用户接口。JDBC中包括了一组由Java语言编写的接口和类,都独立于特定的DBMS,或者说它们可以和各种数据相关联,即独立于数据库管理系统DBMS的应用提供了能与多个不同数据库连接的通用接口。这
2、对于数据库程序来说,想要访问多种数据库,只需要一个统一的接口就可以实现。在Java中JDBC提供了Java访问数据库平台统一的API。JDBC实际上就是由Java实现的数据库访问中间件。程序员可以通过JDBC向各种关系型数据库发送SQL语句,只需要使用JDBC提供的几个类(对象)或接口即可,而不必为不同的数据库编写不同的程序。有了JDBC以后,对于数据库编程,程序员只需要在Java语言中使用SQL语言,使Java应用程序或JavaApplet实现对分布在网络上的各种数据库的访问,而不用考虑底层具体
3、DBMS的连接和访问过程。JDBC由一组Java语言编写的接口和类组成,使用内嵌式的SQL,主要实现三大功能:(1)建立与数据库的连接;(2)执行SQL声明,向数据库发送SQL语句;(3)处理数据库返回的SQL执行结果。JDBC支持基本的SQL功能,使用它可以方便地与不同的关系数据库建立连接,进行相关操作,无须再为不同的DBMS分别编写程序。JDBC是一种底层API,意味着它将直接调用SQL命令,同时也是构造高层API和数据库开发工具的基础。高层API和数据库开发工具应该使用户界面更加友好,使用更
4、加方便和易于理解。不过所有这样的API最终将被翻译为像JDBC这样的底层API。两种基于JDBC的高层API,一种是SQL语言嵌入Java的预处理器,另一种是实现从关系数据库到Java类的直接映射,目前都正处于开发阶段。由于JDBC带来的便捷,越来越多的程序员已经开始利用JDBC为基础的工具进行开发,使开发工作更加容易。而程序员同时也正在开发让最终用户更加容易访问数据库的应用程序,Java程序通过JDBC访问数据库的关系如图11-1所示。图11-1Java程序通过JDBC访问数据库11.2JDBC
5、的结构11.2.1JDBCAPIJDBCAPI是面向程序员的,Java程序员通过调用此API可以实现连接数据库,执行SQL语句并返回结果集。JDBCAPI主要由一系列的接口定义所构成,主要的接口如表11-1所示。11.2.2JDBCDriverAPI面向底层的JDBCDriverAPI主要是针对数据库厂商开发数据库底层驱动程序使用的,一般情况下用于开发应用程序的程序员用不到这些类库。Java的应用程序员通过SQL包中定义的一系列抽象类对数据库进行操作,而实现这些抽象类并完成实际操作,则是由数据库驱
6、动器Driver运行的,最终保证Java程序员通过JDBC实现对不同数据库的操作。其结构如图11-2所示。图11-2JDBCDriverAPI结构图11.3JDBC驱动程序的类型目前比较常见的JDBC驱动程序可分为以下四种。1.JDBC-ODBC和ODBC驱动程序这种驱动器通过ODBC驱动器提供数据库连接。JDBC在设计上和ODBC很类似,JDBC和数据库的连接方法之一是先建立起一个JDBC-ODBC桥接器。由于微软产品ODBC驱动程序已经被广泛应用,因此建立这种桥接器后,JDBC就有能力访问各种
7、类型的数据库。使用这种驱动器,要求每一台客户机都要装入ODBC的驱动器。2.Native-APIpartly-JavaDriver/本地API这种驱动方式将数据库厂商的特殊协议转化成Java代码以及二进制类码,使Java数据库客户与数据库服务器通信。各客户机使用的数据库可能各不相同,需要在客户机上装有相应DBMS的驱动程序。3.JDBC网络纯Java驱动程序这种驱动程序将JDBC指令转化成独立于DBMS的网络协议形式,再由服务器转化为特定DBMS的协议形式。这种网络服务器中间件能够将它的纯Java
8、客户机连接到多种不同的数据库上。有关DBMS的协议由各数据库厂商决定。这种驱动器可以连接到不同的数据库上,是最为灵活的JDBC驱动程序。将来也许所有这种解决方案的提供者都能提供适合于Intranet用的产品。为了使这些产品也支持广域网存取,它们必须处理Web所提出的安全性、通过防火墙的访问等方面的要求。目前一些厂商已经开始将JDBC驱动程序加到他们现有的数据库中间件产品中。4.本地协议纯Java驱动程序这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议。这相当于客户
此文档下载收益归作者所有