hibernate版本:4.2.7.Final

c3p0版本:0.9.2.1

mysql版本:5.5


第一步:

   将hibernate包中与c3p0相关的jar包引入到工程,具体路径为:hibernate-4.2.7.Final\lib\optional\c3p0;分别是c3p0-0.9.2.1.jar、hibernate-c3p0-4.2.7.Final.jar、mchange-commons-java-0.2.3.4.jar;

第二步:

修改hibernate.cfg.xml配置文件,添加属性,选择c3p0作为连接池;

org.hibernate.dialect.MySQLDialect
com.mysql.jdbc.Driver
jdbc:mysql:///hibernate
root
123456
update
true
org.hibernate.connection.C3P0ConnectionProvider
20
10
120
Test
100
120
1
true
18000
25000
120

第三步:

   测试连接池是否起作用;

办法一:修改log4j的log4j.properties,修改log4j.rootLogger=Info,这样将降低记录与显示日志的级别。运行程序时如果能看到 [org.hibernate.connection.C3P0ConnectionProvider]标志作Hibernate在连接数据库时已选择了C3P0。

     方法二:在MySQL中使用命令show processlist查看连接数,如连接池中配置最小10个连接时将显示:


此外C3P0配置属性的说明如下:

3
30
1000
false
Test
false
100
null
false
60
3
60
15
100
3
root
password
select id from test where id=1
300
false
true
root
在Hibernate(spring管理)中的配置:
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:@localhost:1521:Test
Kay
root