日期:2014-05-16 浏览次数:20644 次
一、几个参数详解
(1)breakAfterAcquireFailure
如果设为true,那么在尝试获取连接失败后该数据源将申明已断开并永久关闭。
如果设为false,获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常。但是数据源仍有效保留,并在下次调用getConnection()的时候继续尝试获取连接。
?
(2)testConnectionOnCheckin
如果设为true,那么在取得连接的同时将校验连接的有效性。性能消耗大。
?
(3)idleConnectionTestPeriod
每X秒检查所有连接池中的空闲连接。
?
二、application.xml文件中的c3p0配置
?
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="automaticTestTable" value="CONNECTION_TEST" /> <property name="testConnectionOnCheckout" value="true" /> <property name="acquireRetryAttempts" value="5" /> <property name="driverClass"> <value>${CHECK_ST_ORL_driverClassName}</value> </property> <property name="jdbcUrl"> <value>${CHECK_ST_ORL_URL}</value> </property> <property name="user"> <value>${CHECK_ST_ORL_USER}</value> </property> <property name="password"> <value>${CHECK_ST_ORL_PASSWD}</value> </property> <property name="minPoolSize"> <value>30</value> </property> <property name="maxPoolSize"> <value>100</value> </property> <property name="initialPoolSize"> <value>30</value> </property> <property name="maxConnectionAge"> <value>1800</value> </property> <property name="maxIdleTime"> <value>1800</value> </property> <property name="maxIdleTimeExcessConnections"> <value>300</value> </property> <property name="maxStatements"> <value>0</value> </property> <property name="testConnectionOnCheckin"> <value>false</value> </property> <property name="idleConnectionTestPeriod"> <value>60</value> </property> <property name="checkoutTimeout"> <value>1000</value> </property> <property name="breakAfterAcquireFailure"> <value>false</value> </property> </bean>?
?
三、测试详情
?
?
breakAfterAcquireFailure |
testConnectionOnCheckin |
idleConnectionTestPeriod |
oracle |
mysql |
false |
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|