spring資料來源c3p0配置

笨人煮酒發表於2017-04-07
把spring安裝目錄lib\c3p0下的c3p0-0.9.1.2.jar放置在類路徑下
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=GBK"/>
<property name="user" value="root" />
<property name="password" value="root" />
<!--連線池中保留的最小連線數。-->
<property name="minPoolSize" value="5" />

<!--連線池中保留的最大連線數。Default: 15 -->
<property name="maxPoolSize" value="30" />

<!--初始化時獲取的連線數,取值應在minPoolSize與maxPoolSize之間。Default: 3 -->
<property name="initialPoolSize" value="10"/>

<!--最大空閒時間,60秒內未使用則連線被丟棄。若為0則永不丟棄。Default: 0 -->
<property name="maxIdleTime" value="60"/>

<!--當連線池中的連線耗盡的時候c3p0一次同時獲取的連線數。Default: 3 -->
<property name="acquireIncrement" value="5" />

<!--JDBC的標準引數,用以控制資料來源內載入的PreparedStatements數量。但由於預快取的statements  
屬於單個connection而不是整個連線池。所以設定這個引數需要考慮到多方面的因素。  
如果maxStatements與maxStatementsPerConnection均為0,則快取被關閉。Default: 0-->
<property name="maxStatements" value="0" />

<!--每60秒檢查所有連線池中的空閒連線。Default: 0 -->
<property name="idleConnectionTestPeriod" value="60" />

<!--定義在從資料庫獲取新連線失敗後重復嘗試的次數。Default: 30 -->
<property name="acquireRetryAttempts" value="30" />

<!--獲取連線失敗將會引起所有等待連線池來獲取連線的執行緒丟擲異常。但是資料來源仍有效  
保留,並在下次呼叫getConnection()的時候繼續嘗試獲取連線。如果設為true,那麼在嘗試  
獲取連線失敗後該資料來源將申明已斷開並永久關閉。Default: false-->
<property name="breakAfterAcquireFailure" value="true" />
   </bean>

相關文章