一个DBCP的比较完整的连接池配置(Mysql)

在看了
[url]http://agapple.iteye.com/blog/772507[/url]这篇文章后,对公司现有的系统做了改良。使用的是MYSQL配置。
MYSQLURL与驱动不贴出来了,配置文件里都有。

mysql.user=root
mysql.password=root
mysql.connectionPool.maxActive=20
mysql.connectionPool.initialSize=4
mysql.connectionPool.minIdle=5
mysql.connectionPool.maxIdle=20
mysql.connectionPool.maxWait=60000
mysql.connectionPool.removeAbandoned=true


在项目中,我使用SPRING去配置DBCP,读取上述资源文件信息
	<bean id="dsMysql"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>${driver.mysql}</value>
</property>
<property name="url">
<value>${mysql.url}</value>
</property>
<property name="username">
<value>${mysql.user}</value>
</property>
<property name="password">
<value>${mysql.password}</value>
</property>
<!-- 连接池启动时创建的初始化连接数量(不设定即为0)-->
<property name="initialSize">
<value>${mysql.connectionPool.initialSize}</value>
</property>
<!-- 连接池中可同时连接的最大的连接数(默认值为8) -->
<property name="maxActive">
<value>${mysql.connectionPool.maxActive}</value>
</property>
<!-- 连接池中最小的空闲的连接数,低于这个数量会被创建新的连接 -->
<property name="minIdle">
<value>${mysql.connectionPool.minIdle}</value>
</property>
<!-- 连接池中最大的空闲的连接数,超过的空闲连接将被释放 -->
<property name="maxIdle">
<value>${mysql.connectionPool.maxIdle}</value>
</property>
<!-- 最大等待时间,当没有可用连接时,连接池等待连接释放的最大时间,超过该时间限制会抛出异常 -->
<property name="maxWait">
<value>${mysql.connectionPool.maxWait}</value>
</property>
<!-- removeAbandoned属性说明 -->
<!-- 超过removeAbandonedTimeout时间后,是否进 行没用连接(废弃)的回收(默认为false) -->
<!-- 举例当maxActive=20, 活动连接为18,空闲连接为1时可以触发"removeAbandoned".但是活动连接只有在没有被使用的时间超 过"removeAbandonedTimeout(这里默认为300秒)"时才被回收 -->
<!-- 遇到数据库死锁。以前遇到过后端存储过程做了锁表操作,导致前台集群中连接池全都被block住,后续的业务处理因为拿不到链接所有都处理失败了。 -->
<property name="removeAbandoned">
<value>${mysql.connectionPool.removeAbandoned}</value>
</property>
</bean>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值