在Spring配置文件中配置C3P0的例子

12 篇文章 0 订阅
11 篇文章 1 订阅

C3P0官方文档地址:http://www.mchange.com/projects/c3p0/index.html#configuring_connection_testing

首先在WEB工程的lib包中要导入C3P0数据源的jar包:
WEB-INF/lib/c3p0-0.9.1.2.jar (或者更高的版本)

在Spring的applicationContext.xml文件中配置:

1、声明配置数据源参数的jdbc.properties属性文件

<!-- 加载jdbc连接时需要的properties属性文件 -->
    <context:property-placeholder location="classpath:jdbc.properties" />

2、声明C3P0数据源的配置信息

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> 
    <property name="driverClass" value="${jdbc.driverClassName}" /> 
    <property name="jdbcUrl" value="${jdbc.url}" /> 
    <property name="user" value="${jdbc.username}" /> 
    <property name="password" value="${jdbc.password}" /> 
    <!-- 连接池启动时的初始值 --> 
    <property name="initialPoolSize" value="${jdbc.initialPoolSize}" /> 
    <!-- 连接池的最大值 --> 
    <property name="maxPoolSize" value="${jdbc.maxPoolSize}" /> 
    <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --> 
    <property name="minPoolSize" value="${jdbc.minPoolSize}" /> 
    <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --> 
    <property name="maxIdleTime" value="${jdbc.maxIdleTime}" /> 
    <property name="idleConnectionTestPeriod" value="360" /> 
  <property name="preferredTestQuery" value="select 1" />   
    <property name="acquireIncrement" value="5" />   
    <property name="acquireRetryAttempts" value="50" />   
        <property name="acquireRetryDelay" value="1000" />   
        <property name="breakAfterAcquireFailure" value="true" />   
   <property name="autoCommitOnClose" value="false" />   
        <property name="testConnectionOnCheckout" value="true" />      
        <property name="maxStatements" value="100" /> 
        <property name="maxStatementsPerConnection" value="5" /> 
    </bean> 

3、编写独立的数据源配置文件:jdbc.properties属性文件

# mysql 
jdbc.driverClassName=com.mysql.jdbc.Driver 
jdbc.url=jdbc:mysql://dbmailpower.transn.net:3306/database_name?useUnicode=true&characterEncoding=UTF8 
jdbc.username=database_user
jdbc.password=database_user_password
##连接池启动时的初始值 
jdbc.initialPoolSize=5 
##连接池的最大值 
jdbc.maxPoolSize=10 
##最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 
jdbc.minPoolSize=3 
#最大空闲时间 
jdbc.maxIdleTime=600 

完毕。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值