common-dbcp2数据库连接池参数说明
参数 | 默认值 | 描述 | 建议值 |
DefaultAutoCommit |
null |
通过这个池创建连接的默认自动提交状态。如果不设置,则setAutoCommit 方法将不被调用。 |
true |
DefaultReadOnly |
null |
通过这个池创建连接的默认只读状态。如果不设置,则setReadOnly 方法将不被调用。(部分驱动不支持只读模式,如:Informix) |
false |
DefaultTransactionIsolation |
-1 |
通过这个池创建连接的默认事务策略,设置值为下列中的某一个:Connection.TRANSACTION_READ_COMMITTED |
Connection.TRANSACTION_READ_COMMITTED |
DefaultCatalog |
null |
通过这个池创建连接的默认缺省的catalog |
|
CacheState |
true |
//如果设置为true,池化的连接将在第一次读或写,以及随后的写的时候缓存当前的只读状态和自动提交设置。 |
|
InitialSize |
0 |
当这个池被启动时初始化的创建的连接个数 |
10 |
MaxTotal |
8 |
可以在这个池中同时被分配的有效连接数的最大值,如设置为负数,则不限制 |
100 |
MaxIdle |
8 |
可以在池中保持空闲的最大连接数,超出设置值之外的空闲连接将被回收,如设置为负数,则不限制 |
20 |
MinIdle |
0 |
可以在池中保持空闲的最小连接数,超出设置值之外的空闲连接将被创建,如设置为0,则不创建 |
10 |
MaxWaitMillis |
-1 |
(如果没有可用连接)池在抛出异常前等待的一个连接被归还的最大毫秒数,设置为-1则等待时间不确定 |
500 |
ValidationQuery |
null |
在连接池返回连接给调用者前用来进行连接校验的查询sql。 |
SELECT 1 FROM DUAL |
TestOnCreate |
false |
指明对象在创建后是否需要被校验,如果对象校验失败,则触发对象创建的租借尝试将失败。 |
|
TestOnBorrow |
true |
指明在从池中租借对象时是否要进行校验,如果对象校验失败,则对象将从池子释放,然后我们将尝试租借另一个 |
|
TestOnReturn |
false |
指明在将对象归还给连接池前是否需要校验 |
|
TestWhileIdle |
false |
指明对象是否需要通过对象驱逐者进行校验(如果有的话),假如一个对象校验失败,则对象将被从池中释放。 |
true |
TimeBetweenEvictionRunsMillis |
-1 |
空闲对象驱逐线程运行时的休眠毫秒数,如果设置为非正数,则不运行空闲对象驱逐线程 |
|
NumTestsPerEvictionRun |
3 |
在每个空闲对象驱逐线程运行过程中中进行检查的对象个数。(如果有的话) |
|
MinEvictableIdleTimeMillis |
1000 * 60 * 30 |
符合对象驱逐对象驱逐条件的对象在池中最小空闲毫秒总数(如果有的话) |
|
SoftMinEvictableIdleTimeMillis |
-1 |
符合对象驱逐对象驱逐条件的对象在池中最小空闲毫秒总数,额外的条件是池中至少保留有minIdle所指定的个数的连接。 |
|
MaxConnLifetimeMillis |
-1 |
一个连接的最大存活毫秒数。如果超过这个时间,则连接在下次激活、钝化、校验时都将会失败。如果设置为0或小于0的值,则连接的存活时间是无限的。 |
|
ConnectionInitSqls |
null |
在第一次创建时用来初始化物理连接的SQL语句集合。这些语句只在配置的连接工厂创建连接时被执行一次。 |
|
Lifo |
true |
设置为true表明连接池(如果池中有可用的空闲连接时)将返回最后一次使用的租借对象(最后进入)。 |
|
PoolPreparedStatements |
false |
设置该连接池的预处理语句池是否生效 |
|
MaxOpenPreparedStatements |
-1 |
可以在语句池中同时分配的最大语句数。设置为负数则不限制 |
|
AccessToUnderlyingConnectionAllowed |
false |
控制PoolGuard是否可以访问底层连接 |
|
RemoveAbandonedOnBorrow |
false |
//标记是否删除超过removeAbandonedTimout所指定时间的被遗弃的连接。 |
|
RemoveAbandonedTimeout |
300 |
一个被抛弃连接可以被移除的超时时间,单位为秒 |
|
LogAbandoned |
false |
标志是否为应用程序中遗弃语句或连接的代码开启日志堆栈追踪。 |
|
common-dbcp2数据库连接池参数说明的更多相关文章
- 使用ThreadLocal、Apache的dbutils的QueryRunner和dbcp2数据库连接池的BasicDataSource封装操作数据库工具
package hjp.smart4j.framework.helper; import hjp.smart4j.framework.util.CollectionUtil; import hjp.s ...
- common-dbcp2数据库连接池参数说明(转)
转自:http://bsr1983.iteye.com/blog/2092467 由于commons-dbcp所用的连接池出现版本升级,因此commons-dbcp2中的数据库池连接配置也发生了变化, ...
- springboot 多数据源(三种数据库连接池--JDBC,dbcp2,Druid)
本文使用的是springboot2.0(在配置数据源时和springboot1.X略有区别) 首先:springboot默认支持的连接池有dbcp,dbcp2, tomcat, hikari四种连接池 ...
- 第15章—数据库连接池(DBCP2)
spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html 码云源码地址:https://gitee.com/jinxia ...
- dbcp2连接池获取数据库连接Connection
一.先来看看手工创建的方式 public static Connection getConnection() { Connection conn = null; try { Class.forName ...
- mysql数据库连接池使用(二)实现自己的数据库连接池
上一个章节,我们讲了xml文件的解析框架XMLConfiguration的使用,不懂的可以参考 Apache Commons Configuration读取xml配置具体使用. 这个章节主要实现自己的 ...
- <十三>JDBC_dbcp数据库连接池
配置文件:jdbc.properties username=rootpassword=kkdriverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://1 ...
- 【Java EE 学习 16 上】【dbcp数据库连接池】【c3p0数据库连接池】
一.回顾之前使用的动态代理的方式实现的数据库连接池: 代码: package day16.utils; import java.io.IOException; import java.lang.ref ...
- JDBC数据库连接池技术
在JDBC中,获得连接或释放资源是非常消耗系统资源的两个过程,为了解决此类性能问题,通常采用连接池技术,来共享连接.这样我们就不需要每次都创建连接.释放连接了,这些操作都交给了连接池. 用池的概念来管 ...
随机推荐
- Java Web2
JavaBean组件. 定义方法:(假设有一个JavaBean的类名为CounterBean,它有一个count属性.) //在JSP文件中分别定义4种范围内的JavaBean对象的语法 //in p ...
- delphi XE5皮肤的使用
做皮肤其实是项浩大的工程,从美工设计.到贴图.到程序设计,都非常的麻烦,如果不是一个非常成熟的产品且有很大的用户群体,并且公司具有相当实力,一般都不会去自己做皮肤,毕竟涉及的东西太多,一旦出现问题 ...
- JS-firstChild,firstElementChild,lastChild,firstElementChild,nextSibling,nextElementSibling
<body> <ul id="ul1"> <li>11111</li> <li>22222</li> < ...
- Android 时间维护服务 TimeService(针对于特殊定制设备)
此方法针对于无法自动获取网络时间的特殊设备,正常 Android 设备直接调用 System.currentTimeMillis(); 方法获取当前时间即可. TimeService 集成于 Serv ...
- Ubuntu grub引导修复
通过USB启动盘安装系统时将引导程序指定到/dev/sdb1,正常应该是指定到/dev/sdb才是,导致安装之后启动不起来. 重新通过USB启动盘进入试用界面,然后打开终端通过如下操作进行grub引导 ...
- linux系统启动时更改MAC地址
vim /etc/rc.local #change the server's MAC address("00:50:56:84:5C:76" change to 00:50:56: ...
- Pointers and Dynamic Allocation of Memory
METHOD 1: Consider the case where we do not know the number of elements in each row at compile time, ...
- GIT分支管理模型
GIT分支管理模型 link: git-branching-model 主分支(Main branches) 项目两个常驻分支: master 主干分支(锁定),仅用于发布新版本,平时不能在上面干活, ...
- 让fetch也可以timeout
原生的HTML5 API fetch并不支持timeout属性,习惯了jQuery的ajax配置的同学,如果一时在fetch找不到配置timeout的地方,也许会很纠结.fetch 的配置 API 如 ...
- [UCSD白板题] Fractional Knapsack
Problem Introduction Given a set of items and total capacity of a knapsack,find the maximal value of ...