日期:2014-05-16  浏览次数:20588 次

BoneCP,Proxool,DBCP,C3P0 参数介绍

DBCP,C3P0,Proxool,BoneCP详细参数介绍

?

BoneCP:
acquireIncrement: 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3
driveClass:数据库驱动
jdbcUrl:响应驱动的jdbcUrl
username:数据库的用户名
password:数据库的密码
idleConnectionTestPeriod:检查数据库连接池中控线连接的间隔时间,单位是分,默认值:240,如果要取消则设置为0
idleMaxAge:连接池中未使用的链接最大存活时间,单位是分,默认值:60,如果要永远存活设置为0
maxConnectionsPerPartition:每个分区最大的连接数
minConnectionsPerPartition:每个分区最小的连接数
partitionCount:分区数,默认值2,最小1,推荐3-4,视应用而定
acquireIncrement:每次去拿数据库连接的时候一次性要拿几个,默认值:2
statementsCacheSize:缓存prepared statements的大小,默认值:0
releaseHelperThreads:每个分区释放链接助理进程的数量,默认值:3,除非你的一个数据库连接的时间内做了很多工作,不然过多的助理进程会影响你的性能

?

<bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource"     destroy-method="close">      
<!-- 数据库驱动 -->       
<property name="driverClass" value="${aliLibrary.db.driverClass}" />      
<!-- 相应驱动的jdbcUrl -->     
<property name="jdbcUrl" value="${aliLibrary.db.jdbcUrl}" />      
<!-- 数据库的用户名 -->      
<property name="username" value="${aliLibrary.db.username}" />        
<!-- 数据库的密码 -->       
<property name="password" value="${aliLibrary.db.password}" />        
<!-- 检查数据库连接池中空闲连接的间隔时间,单位是分,默认值:240,如果要取消则设置为0 -->       
<property name="idleConnectionTestPeriod" value="${aliLibrary.db.idleConnectionTestPeriod}" />        
<!-- 连接池中未使用的链接最大存活时间,单位是分,默认值:60,如果要永远存活设置为0 -->     
<property name="idleMaxAge" value="${aliLibrary.db.idleMaxAge}" />        
<!-- 每个分区最大的连接数 -->       
<property name="maxConnectionsPerPartition" value="${aliLibrary.db.maxConnectionsPerPartition}" />        
<!-- 每个分区最小的连接数 -->       
<property name="minConnectionsPerPartition" value="${aliLibrary.db.minConnectionsPerPartition}" />        
<!-- 分区数 ,默认值2,最小1,推荐3-4,视应用而定-->     
<property name="partitionCount" value="${aliLibrary.db.partitionCount}" />        
<!-- 每次去拿数据库连接的时候一次性要拿几个,默认值:2 -->        
<property name="acquireIncrement" value="${aliLibrary.db.acquireIncrement}" />        
<!-- 缓存prepared statements的大小,默认值:0 -->       
<property name="statementsCacheSize" value="${aliLibrary.db.statementsCacheSize}" />      
<!-- 每个分区释放链接助理进程的数量,默认值:3,除非你的一个数据库连接的时间内做了很多工作,不然过多的助理进程会影响你的性能 -->     
<property name="releaseHelperThreads" value="${aliLibrary.db.releaseHelperThreads}" />    
</bean>

?

?

?

Proxool:
acquireIncrement: 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3
fatal-sql-exception : 它是一个逗号分割的信息片段.当一个SQL异常发生时,他的异常信息将与这个信息片段进行比较.如果在片段中存在,那么这个异常将被认为是个致命错误 (Fatal SQL Exception ).这种情况下,数据库连接将要被放弃.无论发生什么,这个异常将会被重掷以提供给消费者.用户最好自己配置一个不同的异常来抛出.
fatal-sql-exception-wrapper-class : 正如上面所说,你最好配置一个不同的异常来重掷.利用这个属性,用户可以包装SQLException,使他变成另外一个异常.这个异常或者继承 SQLException或者继承字RuntimeException.proxool 自带了2个实现:'org.logicalcobwebs.proxool .FatalSQLException' 和'org.logicalcobweb s.proxool .FatalRuntimeException' .后者更合适.
house-keeping-sleep-time : house keeper 保留线程处于睡眠状态的最长时间,house keeper 的职责就是检查各个连接的状态,并判断是否需要销毁或者创建.
house-keeping-test-sql : 如果发现了空闲的数据库连接.house keeper 将会用这个语句来测试.这个语句最好非常快的被执行.如果没有定义,测试过程将会被忽略。
injectable-connection-interface : 允许proxool 实现被代理的connection对象法.
injectable-statement-interface : 允许proxool 实现被代理的Statement 对象方法.
injectable-prepared-statement-interface : 允许proxool 实现被代理的PreparedS tatement 对象方法.
injectable-callable-statement-interface : 允许proxool 实现被代理的CallableStat ement 对象方法.
jmx : 如果属性为true,就会注册一个消息Bean到jms服务,消息Bean对象名: "Proxool:type=Pool, name=<alias>". 默认值为false.