在看了
http://agapple.iteye.com/blog/772507这篇文章后,对公司现有的系统做了改良。使用的是MYSQL配置。
MYSQLURL与驱动不贴出来了,配置文件里都有。
mysql.user=root
mysql.password=root
mysql.connectionPool.maxActive=20
mysql.connectionPool.initialSize=4
mysql.connectionPool.minIdle=5
mysql.connectionPool.maxIdle=20
mysql.connectionPool.maxWait=60000
mysql.connectionPool.removeAbandoned=true
在项目中,我使用SPRING去配置DBCP,读取上述资源文件信息
<bean id="dsMysql"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>${driver.mysql}</value>
</property>
<property name="url">
<value>${mysql.url}</value>
</property>
<property name="username">
<value>${mysql.user}</value>
</property>
<property name="password">
<value>${mysql.password}</value>
</property>
<!-- 连接池启动时创建的初始化连接数量(不设定即为0)-->
<property name="initialSize">
<value>${mysql.connectionPool.initialSize}</value>
</property>
<!-- 连接池中可同时连接的最大的连接数(默认值为8) -->
<property name="maxActive">
<value>${mysql.connectionPool.maxActive}</value>
</property>
<!-- 连接池中最小的空闲的连接数,低于这个数量会被创建新的连接 -->
<property name="minIdle">
<value>${mysql.connectionPool.minIdle}</value>
</property>
<!-- 连接池中最大的空闲的连接数,超过的空闲连接将被释放 -->
<property name="maxIdle">
<value>${mysql.connectionPool.maxIdle}</value>
</property>
<!-- 最大等待时间,当没有可用连接时,连接池等待连接释放的最大时间,超过该时间限制会抛出异常 -->
<property name="maxWait">
<value>${mysql.connectionPool.maxWait}</value>
</property>
<!-- removeAbandoned属性说明 -->
<!-- 超过removeAbandonedTimeout时间后,是否进 行没用连接(废弃)的回收(默认为false) -->
<!-- 举例当maxActive=20, 活动连接为18,空闲连接为1时可以触发"removeAbandoned".但是活动连接只有在没有被使用的时间超 过"removeAbandonedTimeout(这里默认为300秒)"时才被回收 -->
<!-- 遇到数据库死锁。以前遇到过后端存储过程做了锁表操作,导致前台集群中连接池全都被block住,后续的业务处理因为拿不到链接所有都处理失败了。 -->
<property name="removeAbandoned">
<value>${mysql.connectionPool.removeAbandoned}</value>
</property>
</bean>
分享到:
相关推荐
DBCP(Database Connection Pool)是Apache软件基金会的Commons项目中的一个组件,它提供了一个数据库连接池服务。数据库连接池在应用服务器启动时创建一定数量的数据库连接,并将这些连接放入池中,当应用程序需要...
随着`commons-dbcp2`的版本更新,数据库连接池的配置也有了相应的调整。为了更好地理解和配置这些参数,本文将详细解析`commons-dbcp2`中的一些关键参数及其意义。 #### 1. `maxIdle` - **参数描述**:表示连接池中...
**DBCP连接池的工作原理:** 1. **初始化**:在应用程序启动时,DBCP会预先创建一定数量的数据库连接并放入连接池。 2. **请求连接**:当程序需要与数据库交互时,它向连接池请求一个连接。连接池检查是否有空闲的...
DBCP(DataBase Connection Pool)是Apache组织提供的一款Java数据库连接池组件,它是Tomcat服务器默认使用的连接池组件。数据库连接池技术的主要目的是提高系统性能,减少数据库操作中的资源开销,通过预先创建并...
1. **DBCP连接池**:DBCP(Jakarta Commons DBCP)是Apache软件基金会的一个项目,它提供了数据库连接池的功能,用于管理数据库连接,提高数据库操作的性能和效率。 2. **MySQL数据库**:MySQL是一种广泛使用的开源...
DBCP(Database Connection Pool)是Apache Commons项目中的一个数据库连接池组件,主要目的是为了提高数据库连接的复用性,减少创建和销毁连接的开销,从而提升应用的性能。DBCP2是其第二个主要版本,提供了更稳定...
本篇文章将详细介绍如何使用DBCP来创建一个针对MySQL数据库的连接池。 首先,我们需要了解DBCP的基本概念。DBCP全称为Apache Commons DBCP,它是基于Apache Commons Pool对象池API构建的,主要功能是管理数据库连接...
总的来说,DBCP连接池是一个强大且灵活的数据库连接管理工具,对于Java开发者来说,它是实现数据库连接池化的一个优秀选择,尤其在配合MySQL数据库使用时,能显著提高应用的性能和响应速度。通过引入提供的jar包,...
**数据库连接池(DBCP)** 是一个在Java应用程序中管理数据库连接的工具,它能够有效地提高数据库操作的性能和效率。DBCP全称为`Jakarta Commons DBCP`,是Apache软件基金会的一个项目,提供了对数据库连接的池化...
配置好这些jar包后,你可以在Java代码或应用服务器的配置文件中设置DBCP连接池的参数,然后在需要的地方通过DataSource对象获取数据库连接。 总的来说,DBCP连接池是Java Web开发中管理数据库连接的重要工具,通过...
Druid是由阿里巴巴开发的数据库连接池,除了基本的连接池功能外,还包括一个ProxyDriver、一系列内置的JDBC组件和一个SQL解析器。Druid对Oracle和MySQL进行了优化,比如Oracle的PS Cache内存占用优化和MySQL的ping...
DBCP(BasicDataSource)是Apache组织提供的一个开源的JDBC连接池组件,全称为Jakarta Commons DBCP。在Java Web开发中,数据库连接池是一个关键的组件,它能够有效地管理数据库连接,提高应用程序的性能和效率。...
DBCP连接池的工作原理是预先创建一定数量的数据库连接,并将这些连接保存在一个池中。当应用程序需要与数据库交互时,不再直接创建新的连接,而是从连接池中获取已存在的连接。使用完毕后,连接会被归还回池,而不是...
DBCP(Database Connection Pool)是Apache组织提供的一种开源数据库连接池组件,主要...总的来说,DBCP连接池是Java应用程序中用于高效管理数据库连接的重要工具,通过合理的配置和使用,可以显著提升系统运行效率。
标题中提到的"jar包"是配置DBCP连接池的基础。你需要将`commons-dbcp.jar`和`commons-pool.jar`这两个JAR文件添加到你的项目类路径中。这两个库分别提供了数据库连接池的基本实现和对象池服务。现在在大多数情况下...
DBCP连接池在Java应用中被广泛使用,尤其是在Web应用服务器中,如Tomcat。 DBCP主要由两个核心组件组成: 1. `commons-dbcp.jar`:这是DBCP的主要库,包含了数据库连接池的实现。它提供了DataSource接口的实现,...
在SSH(Spring、Struts和Hibernate)这样的经典企业级开发框架中,DBCP连接池是一个常用的数据库管理工具。 1. **数据库连接池概念**:数据库连接池是在应用服务器启动时创建的,它会预先建立一定数量的数据库连接...
在Java中,Apache的Commons DBCP是一个常用的数据库连接池实现,它依赖于Apache的两个其他组件:Commons Logging和Commons Pool。 `commons-dbcp2-2.9.0.jar`是Apache Commons DBCP的最新版本2.9.0的JAR文件,它...
在这个"dbcp连接池使用例子"中,我们将深入理解DBCP的工作原理、配置方法以及如何在实际项目中集成和使用。 DBCP连接池的基本概念: 1. 数据库连接池:在应用程序启动时,预先创建并维护一定数量的数据库连接,这些...