2010-11-06 76 views
1

我正在使用c3p0-0.9.1.2.jar休眠3.2.1。以下是休眠配置。休眠c3p0配置參數在運行時不受影響

<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> 
    <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/oDB</property> 
    <property name="hibernate.connection.username">oDBUser</property> 
    <property name="hibernate.connection.zeroDateTimeBehavior">convertToNull</property> 
    <property name="hibernate.connection.autoReconnect">true</property> 

    <property name="c3p0.max_size">10</property> 
    <property name="c3p0.min_size">4</property> 
    <property name="c3p0.timeout">1800</property> 
    <property name="c3p0.max_statements">200</property> 
    <property name="c3p0.maxStatementsPerConnection">5</property> 
    <property name="c3p0.idle_test_period">1500</property> 
    <property name="c3p0.acquire_increment">2</property> 
    <property name="c3p0.testConnectionOnCheckout">true</property> 
    <property name="c3p0.preferredTestQuery">SELECT 1</property> 

但我不認爲像maxStatementsPerConnection,testConnectionOnCheckout和preferredTestQuery的PARAMS都具有在運行時沒有任何影響。我應該爲這些參數做些什麼嗎?這是我在日誌中得到的。

信息2010-11-06 19:04:37364初始化C3P0池...... [email protected] [ConnectionPoolDataSource的 - > [email protected] [ acquireIncrement - > 2,acquireRetryAttempts - > 30,acquireRetryDelay - > 1000,autoCommitOnClose - > false,automaticTestTable - > null,breakAfterAcquireFailure - > false,checkoutTimeout - > 0,connectionCustomizerClassName - > null,connectionTesterClassName - > com.mchange.v2.c3p0 .mpl.DefaultConnectionTester,debugUnreturnedConnectionStackTraces - > false,factoryClassLocation - > null,forceIgnoreUnresolvedTransactions - > false,identityToken - > z8kfsx8c99kx7g8xqvs4 | 87400,idleConnectionTestPeriod - > 1500,initialPoolSize - > 4,maxAdministrativeTaskTime - > 0,maxConnectionAge - > 0,maxIdleTime - > 1800,maxIdleTimeExces sConnections - > 0,maxPoolSize - > 10,maxStatements - > 200,maxStatementsPerConnection - > 0,minPoolSize - > 4,nestedDataSource - > [email protected] [說明 - > null,driverClass - >空,factoryClassLocation - >空值,identityToken - > z8kfsx8c99kx7g8xqvs4 | b245dc,JDBCURL - > JDBC:MySQL的://本地主機:3306/ODB,屬性 - > {autoReconnect的=真,用戶= * ,密碼= * ,nullDateTimeBehavior = convertToNull}],preferredTestQuery - > null,propertyCycle - > 0,testConnectionOnCheckin - > false,testConnectionOnCheckout - > false,unreturnedConnectionTimeout - > 0,usesTraditionalReflectiveProxies - > false ; userOverrides:{}],了dataSourceName - >空值,factoryClassLocation - >空值,identityToken - > z8kfsx8c99kx7g8xqvs4 | 93c5e7,numHelperThreads - > 3]

預先感謝。 古拉

回答

2

但我不認爲像maxStatementsPerConnection,testConnectionOnCheckout和preferredTestQuery的PARAMS都具有在運行時沒有任何影響。我應該爲這些參數做些什麼嗎?

他們沒有進入Hibernate配置文件,你需要提供一個c3p0.properties文件。請參閱C3P0文檔中的Appendix C: Hibernate-specific notes