Proxool、DBCP以及C3P0是最为常见的三种JDBC连接池技术。
介绍
C3P0
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。
c3p0所需jar:c3p0-0.9.2.1.jar mchange-commons-java-0.2.3.4.jar
DBCP
DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。
使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去。
Proxool
Proxool是一种Java数据库连接池技术。sourceforge下的一个开源项目,这个项目提供一个健壮、易用的连接池,最为关键的是这个连接池提供监控的功能,方便易用,便于发现连接泄漏的情况。
Hibernate官方宣布由于Bug太多不再支持DBCP,而推荐使用 Proxool或C3P0。
从性能和出错率来说,proxool稍微比前两种好些,但是使用者貌似较少。c3p0与dbcp区别 dbcp没有自动回收空闲连接的功能 c3p0有自动回收空闲连接功能
配置
1,C3P0配置:
2,dbcp配置
3,proxool配置