Java数据库连接池commons-dbcp升级到commons-dbcp2
来源:互联网 发布:2016mac flash安装不了 编辑:程序博客网 时间:2024/06/02 02:53
背景
Spring Web系统数据库连接池使用的还是老版的commons-dbcp,打算由commons-dbcp升级到commons-dbcp2最新版。
步骤
1、升级maven依赖。
commons-dbcp 1.2.2 升级到 commons-dbcp2 2.1.1
maven项目依赖变更,由
<dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.2.2</version></dependency>
变更为:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-dbcp2</artifactId> <version>2.1.1</version></dependency>
2、更换BasicDataSource和配置连接项
spring-mybatis.xml文件中的bean配置,class由 org.apache.commons.dbcp.BasicDataSource更换为org.apache.commons.dbcp2.BasicDataSource
bean配置由:
<bean id="dataSource-base" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driver}" /> <property name="url" value="${url-test}" /> <property name="username" value="${username-test}" /> <property name="password" value="${password-test}" /> <!-- 初始化连接大小 --> <property name="initialSize" value="${initialSize}"/> <!-- 连接池最大数量 --> <property name="maxActive" value="${maxActive}"/> <!-- 连接池最大空闲 --> <property name="maxIdle" value="${maxIdle}"/> <!-- 连接池最小空闲 --> <property name="minIdle" value="${minIdle}"/> <!-- 获取连接最大等待时间 --> <property name="maxWait" value="${maxWait}"/> <!-- 指明连接是否被空闲连接回收器(如果有)进行检验 --> <property name="testWhileIdle" value="true"/> <!-- 运行一次空闲连接回收器的时间间隔(60秒)--> <property name="timeBetweenEvictionRunsMillis" value="${timeBetweenEvictionRunsMillis}"/> <!-- 验证时使用的SQL语句 --> <property name="validationQuery" value="SELECT 1" /> <!-- 借出连接时不要测试,否则很影响性能 --> <property name="testOnBorrow" value="false"/></bean>
变更为:
<bean id="dataSource-base" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driver}" /> <property name="url" value="${url-test}" /> <property name="username" value="${username-test}" /> <property name="password" value="${password-test}" /> <!-- 初始化连接大小 --> <property name="initialSize" value="${initialSize}"/> <!-- 连接池最大数量 --> <property name="maxTotal" value="${maxTotal}"/> <!-- 连接池最大空闲 --> <property name="maxIdle" value="${maxIdle}"/> <!-- 连接池最小空闲 --> <property name="minIdle" value="${minIdle}"/> <!-- 获取连接最大等待时间 --> <property name="maxWaitMillis" value="${maxWaitMillis}"/> <!-- 指明连接是否被空闲连接回收器(如果有)进行检验 --> <property name="testWhileIdle" value="true"/> <!-- 运行一次空闲连接回收器的时间间隔(60秒)--> <property name="timeBetweenEvictionRunsMillis" value="${timeBetweenEvictionRunsMillis}"/> <!-- 验证时使用的SQL语句 --> <property name="validationQuery" value="SELECT 1" /> <!-- 借出连接时不要测试,否则很影响性能 --> <property name="testOnBorrow" value="false"/></bean>
其中的jdbc.properties:
driver=com.mysql.jdbc.Driverurl-test=jdbc:mysql://localhost:3306/abc?useUnicode=true&characterEncoding=utf8&autoReconnect=trueusername-test=usernamepassword-test=password#定义初始连接数 initialSize=0#定义最大连接数 maxTotal=20#定义最大空闲 maxIdle=20#定义最小空闲 minIdle=1#定义最长等待时间 maxWaitMillis=60000#空闲回收期运行周期(60秒)timeBetweenEvictionRunsMillis=60000
3、连接池配置项变更说明
由于dbcp2使用的连接池pool对配置属性做了修改,需要修改连接池bean配置中的属性,涉及到的修改:
maxWait -> maxWaitMillismaxActive -> maxTotal
注:dbcp2需要jdk1.7以上环境
阅读全文
0 0
- Java数据库连接池commons-dbcp升级到commons-dbcp2
- commons-dbcp数据库连接池技术
- commons-dbcp数据库连接池技术
- Java使用commons-dbcp2.0
- commons-dbcp.jar 数据库连接池学习_!!!
- 【跟我学apache-commons(三)】DBCP2.2---JavaSE配置DBCP连接池
- 连接池 commons-dbcp2-2.1.1使用
- commons dbcp
- java使用dbcp2数据库连接池
- Spring--java.lang.ClassNotFoundException: org.apache.commons.dbcp2.BasicDataSource问题解决
- Commons pool 数据库连接池实现
- Commons pool 数据库连接池实现
- commons-dbcp连接池的分析
- jakarta commons-dbcp
- jakarta commons-dbcp
- jakarta commons-dbcp
- java数据库连接池dbcp
- java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource的解决方法
- ZooKeeper 简单介绍
- sdnu1166.不高兴的津津
- 8670 PSUH函数翻译
- (七)、Java复习笔记之 I/O 流(1)
- 安卓开发之多渠道打包并获取渠道名称
- Java数据库连接池commons-dbcp升级到commons-dbcp2
- liunx centos7安装jdk1.8(yum)
- Tornado 文档学习:运行与部署
- findViewById类型转换异常Casting
- 九章算法 第二节 二分查找 Binary Search
- OpenWrt:自动挂载sd卡
- C语言-模拟实现strcpy
- Git初次使用时的安装配置
- MFC注册控件用法