Spring中以占位符方式配置c3p0连接池

1、需要写一个c3p0.propeties文件,里面以键值对的方式存放着数据库连接池的配置信息。

内容如下:

###### C3P0 dataBase connection pool ######
driverClass=oracle.jdbc.OracleDriver
jdbcUrl=jdbc:oracle:thin:@168.9.202.49:1521:TEST
user=TEST
password=TEST
acquireIncrement=5
acquireRetryAttempts=10
acquireRetryDelay=3000
autoCommitOnClose=true
breakAfterAcquireFailure=false
checkoutTimeout=3000
initialPoolSize=3
maxIdleTime=10000
maxPoolSize=10
maxStatements=0
numHelperThreads=3
propertyCycle=600
maxStatementsPerConnection=0


2. 配置spring数据源

  先引入占位符方式的支持配置,请参考:

Spring中应用占位符需引入的配置http://blog.csdn.net/hu_shengyang/article/details/7900435

 然后配置c3p0数据源如下:

<!-- 配置数据源dataSource  C3P0连接池方式连接数据源 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
        <property name="driverClass" 	value="${driverClass}" />  
        <property name="jdbcUrl" 		value="${jdbcUrl}" />  
        <property name="user" 			value="${user}" />  
        <property name="password" 		value="${password}" />  
		<property name="acquireIncrement" 			value="${acquireIncrement}" />  
        <property name="acquireRetryAttempts" 		value="${acquireRetryAttempts}" />  
        <property name="acquireRetryDelay" 			value="${acquireRetryDelay}" />  
        <property name="autoCommitOnClose" 			value="${autoCommitOnClose}" />  
        <property name="breakAfterAcquireFailure" 	value="${breakAfterAcquireFailure}"/>  
        <property name="checkoutTimeout" 	value="${checkoutTimeout}" /> 
        <property name="initialPoolSize" 	value="${initialPoolSize}" />  
        <property name="maxIdleTime" 		value="${maxIdleTime}" />  
        <property name="maxPoolSize" 		value="${maxPoolSize}" />  
        <property name="maxStatements" 		value="${maxStatements}" />  
        <property name="numHelperThreads" 	value="${numHelperThreads}" />  
        <property name="propertyCycle" 		value="${propertyCycle}" />  
		<property name="maxStatementsPerConnection" 	value="${maxStatementsPerConnection}" /> 
    </bean>


这样的好处是,我们只需要修改*.properties文件就可以修改连接池的配置了。

对于其它的连接池以占位符的方式来配置也是同工异曲~


你可能感兴趣的:(spring,jdbc,c3p0,数据库连接池,user,database)