JavaWeb入门实战—数据库连接池(数据源)

一 介绍

上一篇文章中讲到了通过Connection去访问并操作数据库,每次连接数据库都是创建一个Connection对象,访问完毕再close掉连接,如下:

JavaWeb入门实战—数据库连接池(数据源)


三 实现自己的数据库连接池

实现自己的连接池需实现java.sql.DataSource接口。DataSource接口中定义了两个重载的getConnection方法:

  • Connection getConnection() 
  • Connection getConnection(String username, String password) 

实现DataSource接口,并实现连接池功能的步骤:

  1. 在DataSource构造函数中批量创建与数据库的连接,并把创建的连接加入LinkedList对象中。
  2. 实现getConnection方法,让getConnection方法每次调用时,从LinkedList中取一个Connection返回给用户。
  3. 当用户使用完Connection,调用Connection.close()方法时,Collection对象应保证将自己返回到LinkedList中,而不要把conn还给数据库。

四 开源数据库连接池

        现在很多WEB服务器(Weblogic, WebSphere, Tomcat)都提供了DataSoruce的实现,即连接池的实现。通常我们把DataSource的实现,按其英文含义称之为数据源,数据源中都包含了数据库连接池的实现。
也有一些开源组织提供了数据源的独立实现:

  • DBCP 数据库连接池 
  • C3P0 数据库连接池

        实际应用时不需要编写连接数据库代码,直接从数据源获得数据库的连接。程序员编程时也应尽量使用这些数据源的实现,以提升程序的数据库访问性能。

1、DBCP 

DBCP 是 Apache 软件基金组织下的开源连接池实现,Tomcat 的连接池正是采用该连接池来实现的。该数据库连接池既可以与应用服务器整合使用,也可由应用程序独立使用。

官网地址:http://commons.apache.org/proper/commons-dbcp/

使用方法

1.1、dbcp.properties

来源:Ricky_Fung

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2014年7月13日
下一篇 2014年7月15日

相关推荐