基于JDBC的数据库连接池技术研究与设计 - 编程入门网
对于数据库的访问都是 通过查找该注册表,使用已经分配的连接来完成的。当事务结束时,从注册表中 删除相应表项。
2.2 封装 从上面的论述可以看出,普通的数据库方法和事务方法对于连接的使用(分 配、释放)是不同的,为了便于使用,对外提供一致的操作接口,我们对连接进 行了封装:普通连接和事务连接,并利用了Java中的强大的面向对象特性:多态 。普通连接和事务连接均实现了一个DbConnection接口,对于接口中定义的方法 ,分别根据自己的特点作了不同的实现,这样在对于连接的处理上就非常的一致 了。 2.3 并发 为了使连接管理服务有更大的通用性,我们必须要考虑到多线程环境,即并 发问题。在一个多线程的环境下,必须要保证连接管理自身数据的一致性和连接 内部数据的一致性,在这方面Java提供很好的支持(synchronized关键字),这 样就很容易使连接管理成为线程安全的。 2.4 多数据库服务器 在实际应用中,应用程序常常需要访问多个不同的数据库。如何通过同一个 连接池访问不同的数据库,是应用程序需要解决的一个核心问题。下面介绍一种 解决的途径: 首先,定义一个数据库连接池参数的类,定义了数据库的JDBC驱动程序类名 ,连接的URL以及用户名口令等等一些信息,该类是用于初始化连接池的参数:
其次是连接池的工厂类ConnectionFactory,通过该类将一个连接池对象与一 个名称对应起来,使用者通过该名称就可以获取指定的连接池对象,实现的主要 代码如下:
基于JDBC的数据库连接池技术研究与设计(3)时间:2010-12-15 计算机与信息技术 孙鑫鸽 陈刚 孙小玲连接池应用的实现 一个完整的连接池应用包括三个部分:DBConnectionPool类,负责从连接池 获取(或创建)连接、将连接返回给连接池、系统关闭时关闭所有连接释放所有资 源;DBConnectionManager类,负责装载和注册JDBC驱动、根据属性文件中定义 的属性创建DBConnectionPool、跟踪应用程序对连接池的引用等;应用程序对连 接池的使用。 本文实现的数据库连接池包括一个管理类DBConnectionManager,负责提供与 多个连接池对象(DBConnectionPool类)之间的接口。每一个连接池对象管理一组 封装过的JDBC连接对象Conn,封装过的JDBC连接对象Conn可以被任意数量的 Model层的组件共享。 类Conn 的设计很简单,如下所示:
下面是实现连接池的主要代码:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |