SPRING 如何处理 闲置时间后的数据库自动关闭的问题

TOMCAT
ORACLE
现在情况是 定期一段时间不操作的话 就会自动断开与数据库的连接。

网上找了一些关于SPRING的配置 不过不起效果。。

求解答。

3



180

180
180

这个 断开的频率也太高了吧 故意是数据库服务器端的配置问题吧 不是spring的原因。。。。

参考 http://jzhil2004.blog.163.com/blog/static/2755850420101183035104/

你用的是C3P0连接池嚒?。。。有加了C3P0的jar包嚒。。。

destroy-method="close">







<property name="initialPoolSize">3</property>  
<property name="minPoolSize" value="1"></property>   
<property name="maxIdleTime">180</property>   
<property name="idleConnectionTestPeriod">180</property> 
<property name="hibernate.c3p0.timeout">180</property>  



加个 testConnectionOnCheckout 属性试试

这个是我以前项目里可以用的配置,不过是mysql的 driverClass和jdbcUrl改改就可以了
试试先 automaticTestTable会自动创建表c3p0Test 不用手动添加的

[code="java"]
class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
value="com.mysql.jdbc.Driver" />
value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8" />

    <property name="minPoolSize" value="5" />  
    <property name="maxPoolSize" value="30" />
    <property name="initialPoolSize" value="10" />
    <property name="acquireIncrement" value="5" />  

    <property name="maxIdleTime" value="60" />

<property name="automaticTestTable" value="c3p0Test" /> 
<property name="idleConnectionTestPeriod" value="18000"/>
<property name="testConnectionOnCheckout" value="true"/>
</bean>

[/code]

这个 断开的频率也太高了吧 估计是数据库服务器端的配置问题吧 不是spring的原因。。。。

参考 http://jzhil2004.blog.163.com/blog/static/2755850420101183035104/