欢迎来到天天文库
浏览记录
ID:47162304
大小:115.50 KB
页数:16页
时间:2019-08-14
《高级编程与数据库》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java高级编程与应用开发之数据库编程综述赵灯1.JDBC概念1.1.什么是JDBCJava数据库连接,(JavaDatabaseConnectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,可以为多种关系数据库提供统一访问。1.2.JDBC特点和开放式数据库互连(OpenDatabaseConnectivity,简称ODBC)不同,ODBC是Microsoft公司提供的用于访问数据库的应用程序接口,ODBC虽然可以在任意一计算机语言中使用,但仅限于Windows平台,JDBC秉承了Java的跨平台的特性,虽然它只能在Java语言中使用。2.JDB
2、C的体系结构1.2.2.1.JDBC组成JDBC包含5部分:1.JDBCApplication:负责程序和用户之间的交互;2.JDBCAPI:这是为程序员准备的面向应用程序的编程接口;3.JDBCDriverManager:JDBC驱动程序管理器为应用程序加载和调用驱动程序;4.JDBCDriverAPI:为各个商业数据库厂商提供的编程接口;5.DataSource:各数据库厂商的数据库系统;JDBC至数据库的通信路径如下所示:16图表1Java程序首先使用JDBCAPI来与JDBCDriverManager交互,由JDBCDriverManager载入指定的JDBCdrivers,或者通过
3、JDBC/ODBC桥的方式和数据库取得联系,以后就可以通过JDBCAPI来存取数据库。1.1.JDBCAPI和JDBCDriverAPI简介如图表1所示,Sun公司制定了两套接口,JDBCAPI和JDBC驱动API,现就两套API介绍如下。1.2.2.1.2.2.2.2.1.JDBCAPIJDBCAPI主要位于JDK中的java.sql包中(之后扩展的内容位于javax.sql包中),主要包括(斜体代表接口,需驱动程序提供者来具体实现):lDriverManager:负责加载各种不同驱动程序(Driver),并根据不同的请求,向调用者返回相应的数据库连接(Connection)。lDrive
4、r:驱动程序,会将自身加载到DriverManager中去,并处理相应的请求并返回相应的数据库连接(Connection)。lConnection:数据库连接,负责与进行数据库间通讯,SQL执行以及事务处理都是在某个特定Connection环境中进行的。可以产生用以执行SQL的Statement。lStatement:用以执行SQL查询和更新(针对静态SQL语句和单次执行)。lPreparedStatement:用以执行包含动态参数的SQL查询和更新(在服务器端编译,允许重复执行以提高效率)。lCallableStatement:用以调用数据库中的存储过程。lSQLException:代表在
5、数据库连接的建立和关闭和SQL语句的执行过程中发生了例外情况(即错误)。161.1.1.JDBCDriverAPIJDBC驱动程序共分四种类型:1.JDBC-ODBC桥这种类型的驱动把所有JDBC的调用传递给ODBC,再让后者调用数据库本地驱动代码(也就是数据库厂商提供的数据库操作二进制代码库,例如Oracle中的oci.dll)。优点:只要有对应的ODBC驱动(大部分数据库厂商都会提供),几乎可以访问所有的数据库。缺点:执行效率比较低,不适合大数据量访问的应用;由于需要客户端预装对应的ODBC驱动,不适合Internet/Intranet应用。2.本地API驱动这种类型的驱动通过客户端加载
6、数据库厂商提供的本地代码库(C/C++等)来访问数据库,而在驱动程序中则包含了Java代码。优点:速度快于第一类驱动(但仍比不上第3、第4类驱动)。缺点:由于需要客户端预装对应的数据库厂商代码库,仍不适合Internet/Intranet应用。3.网络协议驱动这种类型的驱动给客户端提供了一个网络API,客户端上的JDBC驱动程序使用套接字(Socket)来调用服务器上的中间件程序,后者在将其请求转化为所需的具体API调用。优点:不需要在客户端加载数据库厂商提供的代码库,单个驱动程序可以对多个数据库进行访问,可扩展性较好。缺点:在中间件层仍需对最终数据进行配置;由于多出一个中间件层,速度不如第
7、四类驱动程序。4.本地协议驱动这种类型的驱动使用Socket,直接在客户端和数据库间通信。优点:访问速度最快;这是最直接、最纯粹的Java实现。缺点:因为缺乏足够的文档和技术支持,几乎只有数据库厂商自己才能提供这种类型的JDBC驱动;需要针对不同的数据库使用不同的驱动程序。1.JDBC应用程序开发现将JDBC应用程序开发的整个过程详解如下:2.2.1.配置驱动程序1.使用JDBC-ODBC桥驱动,需要配置OD
此文档下载收益归作者所有