2012-07-18 61 views
1

如何從連接池中刪除斷開的連接對象?使用c3p0如何從連接池中刪除斷開的連接對象?使用c3p0

在我的應用程序當數據庫通訊失敗時,顯示異常。獲得數據庫連接後,立即發送任何數據庫請求我得到同樣的異常。獲取數據庫連接30秒後的任何請求都能正常工作。所以我如何刪除斷開的連接對象?

我的連接屬性是: -

url=jdbc:mysql://db_host:db_port/db_name 
driverClassName=db_driver_class_name 
username=root 
password=password 
hibernate.platform=org.hibernate.dialect.MySQLDialect 
initialPoolSize=5 
minPoolSize=5 
maxPoolSize=20 
checkoutTimeout=1000 
maxStatements=20 
acquireRetryAttempts=1 
acquireRetryDelay=10 
maxIdleTime=1 
acquireIncrement=0 
maxConnectionAge=1 

回答

0

包括在你的配置參數如下

<prop key="hibernate.c3p0.max_idle_time">6</prop> 
    <prop key="hibernate.c3p0.max_idle_time_excess_connection">4</prop> 
    <prop key="hibernate.c3p0.idle_connection_test_period">600</prop> 
    <prop key="hibernate.c3p0.test_connection_on_checkout">true</prop> 
    <prop key="hibernate.c3p0.preferred_test_query">SELECT 1;</prop> 

希望這對你的工作