您的位置:首页 > 其它

项目中数据源的配置参考

2014-08-28 10:43 288 查看
<bean id="ebdc_ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
       <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/ebdc_db?characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
<!--maxActive: 最大连接数量--> 
<property name="maxActive" value="100"/> 
<!--minIdle: 最小空闲连接--> 
<property name="minIdle" value="5"/>
<!--maxIdle: 最大空闲连接-->
<property name="maxIdle" value="10"/>
<!--initialSize: 初始化连接-->
<property name="initialSize" value="5"/>
<!-- 连接被泄露时是否打印 -->
<property name="logAbandoned" value="true"/>
<!--removeAbandoned: 是否自动回收超时连接-->
<property name="removeAbandoned"  value="true"/>
<!--removeAbandonedTimeout: 超时时间(以秒数为单位),超时后直接清理掉-->
<property name="removeAbandonedTimeout" value="180"/>
<!--maxWait: 最大建立连接等待时间以毫秒为单位 -->
<property name="maxWait" value="10000"/>
<property name="testWhileIdle" value="true"/>
<!-- 线程回收器每隔3600000ms(1h)检查连接池中的空闲连接 -->
<property name="timeBetweenEvictionRunsMillis" value="3600000"/>
<!-- 接上,空闲的连接在18000000ms(5h)时间内可以不被回收,超过就被移除 -->

                <property name="minEvictableIdleTimeMillis" value="18000000" />

                <!--从数据库连接池中取得连接时,对其的有效性进行检查 -->

                <property name="testOnBorrow" value="true"/>

</bean>

其中倒数后四项的配置是为了解决数据连接超时但是仍存在于连接池的无效链接,如果不配置对应长时间开启的服务,有可能造成新的请求拿到的链接无效而报错,因此

在解决这一问题的时候需要配上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: