本文主要是介绍hibernate中c3p0的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Communications link failure due to underlying exception的原因和解决办法
Mysql服务器默认的“wait_timeout”是8小时,如果connection空闲超过8个小时,Mysql将自动断开该 connection。这样的话,如果连接池里的connection超过8小时无人使用,则会造成以上的异常,解决办法可以使用C3P0来管理设置connection
<property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
<property name="hibernate.c3p0.min_size">8</property>
<property name="hibernate.c3p0.max_size">20</property>
<property name="hibernate.c3p0.timeout">120</property>
<property name="hibernate.c3p0.max_statements">100</property>
<property name="hibernate.c3p0.idle_test_period">120</property>
<property name="hibernate.c3p0.acquire_increment">2</property>
<property name="hibernate.c3p0.validate">true</property>
注意:在hibernate3中是不会自带C3P0包的,需要自己下载,这个问题整死笔者了
在hibernate3中使用此配置是正确的,如果出异常的话,检查lib目录下有无C3P0包
c3p0包的下载和说明文档
http://sourceforge.net/projects/c3p0/
这篇关于hibernate中c3p0的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!