DBCP连接池配置详解,参数列表

Spring DBCP配置


     
     
     
     
  1. <bean id=“dataSource” class=“org.apache.commons.dbcp.BasicDataSource” destroy-method=“close”>
  2. <property name=“driverClassName” value=“com.mysql.jdbc.Driver”/>
  3. <property name=“url” value=“jdbc:mysql://192.168.0.109:3306/test?useUnicode=true&characterEncoding=UTF-8”/>
  4. <property name=“username” value=“root”/>
  5. <property name=“password” value=“root”/>
  6. <property name=“initialSize” value=“5”/>
  7. <property name=“maxIdle” value=“10”/>
  8. <property name=“minIdle” value=“5”/>
  9. <property name=“maxActive” value=“15”/>
  10. <property name=“removeAbandoned” value=“true”/>
  11. <property name=“removeAbandonedTimeout” value=“180”/>
  12. <property name=“maxWait” value=“3000”/>
  13. <property name=“timeBetweenEvictionRunsMillis” value=“10000”/>
  14. <property name=“numTestsPerEvictionRun” value=“10”/>
  15. <property name=“minEvictableIdleTimeMillis” value=“10000”/>
  16. <property name=“validationQuery” value=“select 1” />
  17. <property name=“testOnBorrow” value=“true”/>
  18. bean>

部分参数中文说明

参数

默认值

可选值

格式

说明

username  

用户名

password  

密码

url

数据库连接url

driverClassName 

驱动类

connectionProperties  

 [propertyName=property;]*

当建立新连接时被发送给JDBC驱动的连接参数

defaultAutoCommit

true

true、false

defaultReadOnly

driver default

driver default
true
false

默认只读状态,不指定则是驱动的默认值

defaultTransactionIsolation 

driver default

ONE
READ_COMMITTED
READ_UNCOMMITTED
REPEATABLE_READ
SERIALIZABLE

实物的隔离级别
ONE
不支持
READ_COMMITTED
读已提交
READ_UNCOMMITTED
读未提交
REPEATABLE_READ
可重复读
SERIALIZABLE
串行化

defaultCatalog

默认的database的名称,多数驱动已经在url中指定

initialSize

0

非负整数

初始化连接数

maxActive

8

整数

最大活跃连接数,负数则无限制

maxIdle

8

整数

最大空闲连接数,超出会释放连接

minIdle

0

整数

最小空闲数

maxWait

无限

整数

最大等待时间:当没有可用连接时,连接池等待连接
被归还的最大时间(以毫秒计数),-1代表无限

validationQuery

检查连接是否可用的查询语句

testOnCreate

false

true、false

连接被create时是否校验可用,
validationQuery必须给定合法值

testOnBorrow

true

true、false

连接被get时是否校验可用,
validationQuery必须给定合法值

testOnReturn

false

连接被归还到连接池中时是否校验可用
validationQuery
必须给定合法值

testWhileIdle

false

连接被空闲连接回收器检测回收时否校验可用
validationQuery
必须给定合法值

timeBetweenEvictionRunsMillis

-1

空闲连接回收器运行周期,毫秒,-1表示不运行

numTestsPerEvictionRun

3

在每次空闲连接回收器线程(如果有)
运行时检查的连接数量

minEvictableIdleTimeMillis

1000 * 60 * 30

最小空闲时间,毫秒

poolPreparedStatements

false

是否启池的prepared statement 池功能

maxOpenPreparedStatements

无限制

statement池能够同时分配的打开的
statements
的最大数量
(前提:poolPreparedStatements=true)

accessToUnderlyingConnectionAllowed

false

true、false

是否运行获取底层的Connection(驱动提供的连接)
获取方式:
Connection conn = ds.getConnection();
Connection dconn = ((DelegatingConnection) conn).getInnermostDelegate();

removeAbandoned

removeAbandonedTimeout

logAbandoned


            

你可能感兴趣的:(11,后台框架:SSM,▍XML配置文件)