基于ODBC-JDBC的数据库连接策略的实现与优化论文

时间:2020-07-19 17:34:26 其他类论文 我要投稿

基于ODBC-JDBC的数据库连接策略的实现与优化论文

  【摘 要】使用JSP技术开发动态交互式Web信息系统是当今Internet主流技术之一,随着网络应用和电子商务的迅速发展,站点与数据库连接的操作越来越频繁,也越来越复杂。通过分析现有的数据库连接技术,选择使用ODBC-JDBC桥驱动程序作为JDBC的驱动程序,介绍其连接策略、实现方法,并对其从驱动程序、连接对象、执行对象等方面进行优化策略分析。

基于ODBC-JDBC的数据库连接策略的实现与优化论文

  【关键词】ODBC-JDBC,实现方法,优化策略

  1 数据库连接技术介绍

  数据库软件设计开发不可避免地应用数据库连接,建立数据库连接,与数据库进行通信,执行SQl语句并检索查询结果。目前实现上述活动的常用技术是ODBC和JDBC。

  ODBC是Open DataBase Connectivity的缩写,是微软公司提供的应用程序接口,用于访问数据库。使用结构化查询语言作为其数据库语言,并提供插入、修改和删除数据库以及从数据库中提取信息的功能。

  JDBC是Java DataBase Connectivity的缩写,是Sun Microsystems提供的Java API一部分,它定义了一组API对象以及与数据库进行交互的方法。

  ADO是Activex Data Objects的缩写,是一个用于存取数据源的COM组建。提供了编程语言和统一数据访问方式OLE DB的一个中间层。允许开发人员编写访问数据的代码而不用关心数据库如何实现,而只关心到数据库的连接。

  ADO.net是在.net编程环境中优先使用的数据访问接口。他提供了数据访问的互用性和可伸缩性。

  ADO.net是一组用于和数据源进行交互的面向对象的类库。通常情况下,数据源是数据库,但同样也能够是文本文件、Excel表格或者是XML文件。

  2 Java中连接技术选择

  ODBC使用的是C语言接口,对于Java而言,对本地C语言代码的调用在应用程序的安全性、实现性、健壮性以及可移植性等方面存在缺陷,束缚了ODBC驱动程序在Java应用程序中的应用。

  尽管Java中存在的Java.io包提供了丰富的类和接口,但是通过这些类和接口访问的数据是以流的形式表示的,因此对于访问存储在外部数据提供的程序,比如SQLServer、Oracle和Access中的数据的所有Java应用程序而言,JDBC是弥补缺陷的良药,是必须的。

  在Java语言中, JDBC ( Java DataBaseConnection)是应用程序与数据库沟通的桥梁,即Java语言通过JDBC技术访问数据库。JDBC是一种“开放”的方案,它为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。

  JDBC提供两种API,分别是面向开发人员的API和面向底层的JDBC驱动程序API,底层主要通过直接的JDBC驱动和JDBC-ODBC桥驱动实现与数据库的连接。

  一般来说,Java应用程序访问数据库的过程是:①装载数据库驱动程序;

  ②通过JDBC建立数据库连接;

  ③访问数据库,执行SQL语句;

  ④断开数据库连接。

  对于共享资源,有一个很著名的设计模式:资源池(Resource Pool)。该模式正是为了解决资源的频繁分配 释放所造成的问题。为解决上述问题,可以采用数据库连接池技术。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要的是我们可以通过连接池的管理机制监视数据库的连接的`数量、使用情况,为系统开发、测试及性能调整提供依据。

  因此,为了提高访问数据库数据的效率,Java应用程序选择了JDBC,使用ODBC-JDBC桥驱动程序连接数据库,从JDBC访问ODBC数据源。

  3 连接策略的实现

  开发基于ODBC-JDBC的数据库连接应用程序步骤如下:①为数据库创建数据源②导入Java.sql包③加载驱动程序④加载将连接该数据源的驱动程序,使用Class.forName()方法,将给定的类加载到Java虚拟机中⑤创建连接对象DriverManager类试图找到一个能够连接至URL中指定的数据库的驱动程序。这个类跟踪已注册的驱动程序,当调用getConnection()方法时,它会搜索整个该驱动程序列表,直到找到一个能够连接至URL中指定的数据库的驱动程序。加载此驱动程序后,使用getConnection()方法建立与数据源的连接。此方法中有3个接收参数,分别表示数据源的名称、数据源连接所使用的类型以及用户名、密码。

  ⑥创建执行对象并执行

  一旦建立连接,就使用该连接将SQL语句传递给它所连接的数据库。然后使用Connection类的createStatement()方法创建Statement接口实例。执行查询最有效的方法是使用Statement接口中的executeQuery()方法,接收SQL查询字段作为参数,并返回包括查询结果的ResultSet。

  执行更新数据库,包括插入数据,修改数据或者删除数据,一方面需要编写数据更新的SQL语句,它不会将结果作为ResultSet返回,而是返回一个整数,表示受该语句影响的行数。另一方面使用executeUpdate()方法。

  ⑦接收、存放执行结果

  使用Statement对象构建并执行SQL语句以执行对数据库的操作,操作结果返回给ResultSet对象。

  ⑧关闭对象和连接

  关闭ResultSet对象、Statement对象、关闭连接。

  4 连接策略的优化

  4.1 连接中驱动程序的优化使用本地API部分Java驱动程序的速度要比基于ODBC-JDBC桥的数据库连接速度快,它将JDBC调用转换成对DBMS客户端API的调用,它使用本地数据库API的Java本地接口访问数据库。

  与ODBC驱动程序一样,它也需要在客户机上使用本地二进制代码,并要求安装和配置数据库。随着网络技术、中间件技术的纵深发展和不断完善,使用网络协议和中间件与服务器进行通信,然后服务器将该协议和中间件转换成特定于DBMS的方法调用,这是JDBC网络纯Java驱动程序下的数据库连接,此驱动程序开始独立于数据库,将JDBC转换成本地专有数据库调用,还支持对多个后端数据库进行访问。

  4.2 执行对象选择的优化

  在数据库连接过程中存在多次执行同一操作的情况,为了提高SQL语句的接收、编译效率,可用PreparedStatement()方法创建PreparedStatement对象,因为PreparedStatement对象用于预编译的SQL语句,可以接收一个或者多个参数作为输入参数,提高了效率。另外它还增添了设置值所需要的一整套方法,可以将这些方法发送到数据库以代替参数的占位符。

  4.3 连接对象的优化

  使用连接池是实现数据访问优化的重要途径之一。如果每次Web应用接受到请求,就向数据库要求一个连接,当执行完就通知数据库中断连接,这样的方式将会耗费大量的时间与资源。而连接池的运作方式是一开始向数据库要求很多Connection连接存储在一个Pool池内,让需要的人从连接池中取Connection,等到用完之后再放回连接池,从而让Web应用与数据库之间能够获得最大的执行效率。

  5 结束语

  数据库连接的实现是数据库软件开发过程中必不可少的组成部分,数据库连接的优化关系到数据查询、更新的执行效率,成为衡量系统开发性能的重要指标,因此数据库连接策略的实现和优化是一项系统工程,值得我们在开发实践中不断的探索和挖掘。

  参考文献

  [1]王 强.高校综合人力资源管理系统的数据库优化策略研究[J].电脑知识与技术,2010,17(10):50-51.

  [2]孙鑫鸽,陈 刚,孙小玲.基于JDBC的数据库连接池技术的研究与设计[J].计算机与信息技术,2007,15(5):61-62.

  [3]王秀义.基于JDBC的数据库连接池及实现[J].计算机系统应用,2005,22(4):43-45.

【基于ODBC-JDBC的数据库连接策略的实现与优化论文】相关文章:

1.浅谈基于RFID 的会议签到系统设计与实现论文

2.浅谈基于Openstack 的网络攻防实验平台设计与实现论文

3.优化农机装备结构的策略分析论文

4.基于多重视角的知识型员工职涯高原优化策略论文

5.油气公司物资采购风险管理的现状与优化策略论文

6.计算机安全的优化策略论文

7.基于Hadoop的RDF数据存储策略的理论分析论文

8.浅谈基于SOA 的数据交换中心的设计和实现论文