c3p0连接池官方文档地址http://www.mchange.com/projects/c3p0/index.html
数据库连接的用户名和密码一般不是明文,请不要效仿!!
app.properties配置:
#---------------------------------------------------------
# c3p0连接池配置
#---------------------------------------------------------
#如果设为true那么在每个connection提交的时候都 将校验其有效性,因性能消耗大请只在需要的时候使用它
jdbc.c3p0.testConnectionOnCheckout=false
#取得连接的同时将校验连接的有效性,默认false
jdbc.c3p0.testConnectionOnCheckin=true
#隔多少秒检查所有连接池中的空闲连接,默认为0表示不检查要小于MySQL的wait_timeout,防止8小时失效问题28800
jdbc.c3p0.idleConnectionTestPeriod=3600
#初始化时创建的连接数,应在minPoolSize与maxPoolSize之间取值,默认为3
jdbc.c3p0.initialPoolSize=50
#连接池中保留的最小连接数,默认为15
jdbc.c3p0.minPoolSize=30
#连接池中保留的最大连接数,默认为15
jdbc.c3p0.maxPoolSize=150
#最大空闲时间,超过空闲时间的连接将被丢弃。为0或负数则永不丢弃,默认为0
jdbc.c3p0.maxIdleTime=3600
#连接池在无空闲连接可用时一次性创建的新数据库连接数,默认为3
jdbc.c3p0.acquireIncrement=10
#连接池在获得新连接失败时重试的次数,如果小于等于0则无限重试直至连接获得成功。默认为30
jdbc.c3p0.acquireRetryAttempts=5
#:两次连接中间隔时间,单位毫秒,连接池在获得新连接时的间隔时间。默认1000
jdbc.c3p0.acquireRetryDelay=1000
#mysql
jdbc.driverClassName=com.mysql.jdbc.Driver
#mysql连接URL
jdbc.url=jdbc:mysql://127.0.0.1:3306/masterDB?Unicode=true&characterEncoding=UTF-8&allowMultiQueries=true
#用户名
jdbc.username=root
#密码
jdbc.password=root
spring 配置代码片段
<!-- 读取classpath下的app.properties配置 -->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:app.properties</value>
</list>
</property>
</bean>
<!-- dataSource -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"
p:driverClass="${jdbc.driverClassName}"
p:jdbcUrl="${jdbc.url}"
p:user="${jdbc.username}"
p:password="${jdbc.password}"
p:testConnectionOnCheckout="${jdbc.c3p0.testConnectionOnCheckout}"
p:testConnectionOnCheckin="${jdbc.c3p0.testConnectionOnCheckin}"
p:idleConnectionTestPeriod="${jdbc.c3p0.idleConnectionTestPeriod}"
p:initialPoolSize="${jdbc.c3p0.initialPoolSize}"
p:minPoolSize="${jdbc.c3p0.minPoolSize}"
p:maxPoolSize="${jdbc.c3p0.maxPoolSize}"
p:maxIdleTime="${jdbc.c3p0.maxIdleTime}"
p:acquireIncrement="${jdbc.c3p0.acquireIncrement}"
p:acquireRetryAttempts="${jdbc.c3p0.acquireRetryAttempts}"
p:acquireRetryDelay="${jdbc.c3p0.acquireRetryDelay}" />