APP下载

基于数据库访问有效实现的Java语言运用探析

2014-10-10付宗见杨志献

电脑知识与技术 2014年24期

付宗见 杨志献

摘要:Java语言是当前普遍使用的计算机数据库编程语言,该文首先介绍了Java连接数据库的主要方法,并从JDBC的特点出发,详细探讨了提高Java数据库访问效率的几种方法。

关键词:数据库访问;Java;JDBC

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)24-5595-02

数据库在软件开发中的应用十分广泛。对数据库进行连接是应用数据库的一个重要前提。Java语言由于具有不依赖系统平台、语言系统发达、安全等特点,而且一次编写就能在各处运行,因此在众多计算机编程语言中脱颖而出,成为了当前最被大众认可的编程语言。在Java语言中,对数据库进行有效的访问需要以JDBC作为前提。所谓JDBC,就是利用Java语言编写的一系列的类和接口,利用JDBC可以方便快捷的实现对任何一个数据库的有效连接。

1 JDBC概述

1.1 JDBC的产生背景

Java语言的优点很多,它语言系统发达、通俗易懂、便于编写,能够从网络上自动下载,不依赖系统平台,因此是进行数据库应用程序开发的理想语言。随着Java的应用越来越广泛,越来越多的Java语言使用者都渴望编写出可不依赖数据库管理系统( Data Base Management system)而独立存在的程序,从而方便对各种各样的数据库的连接过程,使访问更加方便。所以,定义一个通用的SQL数据库存取框架有相当的迫切性和必要性,通过数据库存取框架在数据库的连接模块上生成统一的界面,从而使得应用程序的开发者能够给出多样化的连接方案。而实现上述功能,所唯一欠缺的在于如何实现Java语言和各式各样的数据库之间的无障碍沟通,而利用JDBC,可以完美的解决这个问题。

1.2 JDBC的特点

在Java中,有两个JDBC接口,一个JDBC接口是在底层的JDBC Driver API,另一个被用于Application Programe Interface,即面向程序员的应用程序接口。位于底层的JDBC Driver API主要有四个形式,即JDBC-ODBC桥形式、部分Java驱动程序和本机API的组合形式、面向数据库中间件的纯Java驱动程序以及直接面向数据库的纯Java驱动程序。其中,JDBC-ODBC桥的形式为了用户能够成功读取ODBC上的数据信息,要求客户端必须要有ODBC的驱动程序,因而给推广应用造成了一定的困难。而部分Java驱动程序与本机API相结合的形式,需要通过本地代码的形式完成对数据库的API调用,然后将JDBC API转化成与商用数据库相匹配的API,以此来实现对数据库所提供数据的使用。面向数据库中间件的纯Java驱动程序在中间件服务器中隐藏了Java的细节,因此不需要考虑Java程序的细节,根据这个特性,能够使用一样的代码实现对不一样数据库的访问。直接面向数据库的纯Java驱动程序的访问方式比较直接,直接在服务器上处理发自客户端的请求,并显示程序的执行结果,直接面向数据库的纯Java驱动程序的使用比较简单,不需要安装驱动程序或者附加软件,因此与前几种相比有其独特的优势。

2 优化SQL语句格式

在通过Java语言对数据库进行连接时,连接的效果与SQL语句的格式有一定的关系。在实际操作中,一般SQL语句的执行都是通过Statement对象实现的,这样的办法比较笨拙,需要每一次都解析编译数据库,工作量大,在极大程度上降低了对数据库的访问效率。而通过Prepared Statement对象来实现对SQL语句的执行就不会出现这样的现象。通过Prepared Statement,命令会根据特定的机制被数据库进行解析编译,然后在特定的存储区域进行暂时的储存,这样在下一次访问数据库时,只需要再一次进行命令解析就可以了,不需要进行额外的编译,在一定程度上提高了访问数据库的效率。

同时,利用Prepared Statement为对象执行SQL语言,通过配合数据库批量更新机制的方式,即一次性调用整批的更新命令,一次性实现对数据库的全面更新,能够进一步提升访问数据库的效率。因此,在实际操作时,利用Prepared Statement代替Statement作为SQL语句的执行对象受到了普遍的使用。值得注意的是,在具体的操作层面,需要对数据库及其驱动配置是否支持批量更新进行必要的检查,在检查时,需要用到Data base Meta Data对象所提供的Support Batch UP dates的办法。

3 使用数据库连接池技术

数据库连接池技术是以JDBC为前提,在实践过程中逐渐改进逐渐完善的一种技术。数据库连接池技术的优点在于以重用一组连接对象的方式,帮助用户共享一组己经打开的连接,省去了自主连接数据库所需要的时间时间,最大限度上提升了Java访问数据库的效率。

数据库连接池技术功能的实现依靠于预设的一个缓冲池,在缓冲池中存储数据库中的各种数据,并将一定数量的数据连接进行预先存储,这样,在Java访问数据库时,根据实际的需要从“缓冲池”中找到相对应的连接,在访问完成以后,再将连接重新存储进缓冲池。由缓冲池负责对数据连接的存储和整理工作,极大程度的减轻了用户的工作量,,利用这样的方法,可以有效的提升数据库的访问效率。

使用数据库连接池技术,其技术要点在于连接池的建立方式以及如何实现对存储在连接池中的各类连接的有效整理。解决好了这两个问题,数据库连接池技术的发展就变得更加成熟。通常说来,在连接池的建立上,需要以读取XML文件中的配置参数的方式来实现。通过读取XML文件中的配置参数,能够在系统中建立一个静态的缓冲池,这个缓冲池对于数据库而言是唯一的,而且其配置参数也是明确的。在建立好数据库连接池以后,还需要保证连接池的运行稳定性,以便于用户能够从连接池中有效的提取自己想要的连接。

在解决了数据库连接池的建立问题以后,还需要对连接池实施高效的管理,保证存储在连接池中连接的有序性。管理连接池可以采用的方法有很多,每一种管理方式可能取得的管理效果都会有所不同。在实际操作中,应该根据实际情况采用最合适的管理方式。目前阶段,在数据库连接池的管理方式使用的较为广泛的方法是Reference Counting的办法。

4 采用Java多线程技术

Java多线程技术的优势十分明显,在JAVA多线程技术中,同步机制是至关重要的一项基础保障,同步机制能够保证线程间的同步,保证线程间的相互通信,是多线程技术得以实现的大前提。在Java中已经提供了几类可供直接使用的方法来实现线程间的同步。在划分临界资源时可借助synchronized这一关键词来对语句块进行标示,其他Object类中的方法以及Tread类中的方法也能够被直接用来处理不同线程的启用或中断操作。采用多线程技术来提高数据库的访问效率时关键问题并不在于技术本身,而是对线程的有效管理,这取决于程序设计者的控制能力。

5 结束语

综上所述,Java语言是当前主流的编程语言,在JAVA语言成为主流的背景下,如何利用Java语言的优势,提高访问数据库的效率是值得广大业内人士进一步探讨的问题。通过本文所列举的优化SQL语言格式、数据库连接池技术以及Java多线程技术三种方法,可以有效的提高数据库的访问效率,具有广泛的应用前景。

参考文献:

[1] 谷庆华,李成贵.基于Java语言实现数据库的访问[J].计算机技术与发展,2008,18(2):143-144.

[2] 周书锋,张怀伟,韩红艳.基于Java语言的数据库访问[J].福建电脑,2005,9(24):34-35.

[3] 徐萍.JAVA访问SQL数据库的优化探讨[J].探索与观察,2010,10(32):61-62.