读书人

素朴的java数据库连接池实现(一)

发布时间: 2012-08-21 13:00:21 作者: rapoo

朴素的java数据库连接池实现(一)

在服务器端涉及数据库访问的应用程序里头,数据库连接池是一项确保性能的关键技术。一谈起java数据库连接池,大家都可以罗列出一堆开源实现。

它们也各有优劣:
1. DBCP  TOMCAT自带的
2. proxool

3. c3p0: see: http://sourceforge.net/projects/c3p0

4. DBPool
5. Taobao的druid

这些都是蛮不错的连接池实现。基于不用重复造轮子一说,完全可以挑一个自己喜欢的去用。已有的轮子如果没出问题,还好说,出了问题,往往很难解决。
本文的主旨是阐述连接池的基本思想:
1. 能将池化的资源(连接)控制在一定范围以内[min, max]
2. 能在jvm退出之前,释放这些连接资源
3. 能尽量简化用户的代码
4. 能确保连接池的连接始终是活跃的

下面还是上代码吧, 以下的代码是整理而成,缺点还是不少,但是也足够一般情况下的使用,至少是可控的。

1. 一个hook类,用于jvm退出前释放资源

 

读书人网 >其他数据库

热点推荐