`
kalogen
  • 浏览: 890035 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

spring 配置dbcp连接池不能释放,

阅读更多

#回收被遗弃的(一般是忘了释放的)数据库连接到连接池中。  
dataBase.removeAbandoned =false

# 数据库连接过多长时间不用将被视为被遗弃而收回连接池中。    
dataBase.removeAbandonedTimeout = 30

# 将被遗弃的数据库连接的回收记入日志。   
dataBase.logAbandoned = false

#连接池的最大数据库连接数,设为0 表示无限制。  
dataBase.maxActive = 200

#数据库连接的最大空闲连接数。超过此空闲连接数,,数据库连接将被标记为不可用,然后被释放。设为0 表示无限制。 
dataBase.maxIdle=40

#最大建立连接等待时间。如果超过此时间将接到异常。设为-1 表示无限制
dataBase.maxWait=10000

#取得、返回对象和空闲时是否进行验证,检查对象是否有效,默认都为false即不验证
dataBase.testOnBorrow=true
dataBase.testWhileIdle=true
dataBase.testOnReturn=true
dataBase.validationQuery=select 1 from dual

 

 

 

说明:

1. #回收被遗弃的(一般是忘了释放的)数据库连接到连接池中。  
dataBase.removeAbandoned =false

如果这个值为true一般是用来调试的时候用的,正式发布后应该改为false,2. # 将被遗弃的数据库连接的回收记入日志。   
dataBase.logAbandoned = false

这个如果设置为true就会引起如下错误:

  1. DBCP object created 2006-10-25 09:08:02 by the following code was never closed:   
  2. java.lang.Exception   
  3.     at org.apache.commons.dbcp.AbandonedTrace.setStackTrace(AbandonedTrace.java:157)   
  4.     at org.apache.commons.dbcp.AbandonedObjectPool.borrowObject(AbandonedObjectPool.java:76)   
  5.     at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)   
  6.     at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)   
  7.     at org.apache.commons.dbcp.BasicDataSource$$FastClassByCGLIB$$de03396c.invoke(<generated>)   
  8.     at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)  

 

 2.

#连接池的最大数据库连接数,设为0 表示无限制。  
dataBase.maxActive = 200

#数据库连接的最大空闲时间。超过此空闲时间,数据库连接将被标记为不可用,然后被释放。设为0 表示无限制。 
dataBase.maxIdle=40

 

会有可能出现:Cannot get a connection, pool error Timeout waiting for idle object这样的错误

分享到:
评论

相关推荐

    DBCP连接池

    在SSH(Spring、Struts和Hibernate)这样的经典企业级开发框架中,DBCP连接池是一个常用的数据库管理工具。 1. **数据库连接池概念**:数据库连接池是在应用服务器启动时创建的,它会预先建立一定数量的数据库连接...

    HibernateADD (hibernate和spring整合,使用dbcp连接池方式连接数据库)

    在IT行业中,数据库连接管理是应用系统开发中的关键环节,特别是在使用Java进行企业级开发时。...总之,整合Hibernate、Spring和DBCP连接池,可以构建出一个高效、灵活、易于维护的企业级数据库应用。

    dbcp连接池常用包

    在标题"dbcp连接池常用包"中,"常用包"指的是DBCP连接池所需的必备库文件,这些文件包含了DBCP的不同版本,分别为1.3、1.4和1.5。每个版本可能对应着不同的功能特性和修复的bug,开发者可以根据项目的兼容性和需求...

    dbcp连接池所需包

    在这个场景中,"dbcp连接池所需包"指的是用于配置和使用DBCP连接池的必要Java档案库(JAR包)。 首先,`commons-dbcp.jar`是DBCP的主要实现包,它包含了一系列用于管理和维护数据库连接的类和接口。这个库提供了...

    dbcp连接池

    总结起来,DBCP连接池是Java应用程序中管理和复用数据库连接的重要工具,通过合理配置和使用,能够显著提升数据库操作的效率,同时降低系统资源的消耗。在压缩包中的`dbcp`文件可能包含了DBCP的完整库,可以直接导入...

    dbcp数据库连接池所需jar包

    使用DBCP数据库连接池,你需要在你的Java项目中引入这三个JAR文件,并进行相应的配置。以下是一些基本配置步骤: 1. 将这三个JAR文件添加到项目的类路径中。 2. 创建一个XML配置文件(如`dbcp-config.xml`),定义...

    关于DBCP数据库连接池配置整理宣贯.pdf

    数据库连接池技术的主要目的是提高系统性能,减少数据库操作中的资源开销,通过预先创建并管理一批数据库连接,使得应用程序在需要时能快速获取到数据库连接,而不需要每次都去建立新的连接。 在使用DBCP时,我们...

    DBCP数据库连接池

    以下是一个简单的DBCP连接池配置示例,用于展示如何在Spring框架中配置DBCP连接池: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"&gt; ${jdbc.url}"/&gt; ${...

    dbcp连接池包

    使用DBCP连接池时,开发者通常需要编写配置代码,例如使用XML配置文件或者在代码中直接配置。下面是一个简单的XML配置示例: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" ...

    dbcp连接池jar包

    下面将详细介绍DBCP连接池、DBUtils以及如何在项目中配置和使用它们: 1. **DBCP连接池** DBCP连接池的工作原理是预先在内存中创建一定数量的数据库连接,当应用程序需要时,可以从池中获取一个已存在的连接,而...

    dbcp连接池所使用的jar和案例

    - 在Java应用中,需要通过XML或Java代码来配置DBCP连接池,包括设置初始化大小、最大连接数、超时时间、验证SQL等参数。 - 示例XML配置: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp....

    配置log4j配置数据库连接池(以dbcp连接池为例),并将log信息存储在数据库中(以mysql为例)

    数据源名`jdbc/LogDBCP`需要在Spring配置中声明,以关联到我们之前配置的DBCP连接池: ```xml &lt;bean id="LogDBCP" class="org.springframework.jndi.JndiObjectFactoryBean"&gt; ``` 最后,我们需要创建一个数据库...

    spring中 连接池的使用

    在Spring框架中,数据库连接池是管理数据库连接的关键组件,它能有效地提高应用程序的性能和资源利用率。在上述内容中,提到了两种常用的连接池实现:Apache的DBCP(BasicDataSource)和C3P0(ComboPooledDataSource...

    dbcp连接池所需jar(commons-collections-3.1.jar,commons-dbcp-1.2.jar,commons-pool-1.6.)

    在实际应用中,DBCP连接池可以与其他中间件如Spring框架集成,简化管理和配置。同时,DBCP也有其局限性,比如性能和稳定性相比一些现代的连接池如HikariCP稍弱。因此,随着技术的发展,一些项目可能已经转向了更高效...

    dbcp数据库连接池jar包

    综上所述,DBCP数据库连接池是Java Web开发中常用的一种数据库连接管理工具,通过合理的配置和使用,可以显著提高应用的性能和稳定性。在实际项目中,结合Spring等框架,可以更便捷地管理和使用数据库连接。确保正确...

    dbcp 连接池不合理的锁导致连接耗尽解决方案

    然而,DBCP连接池在某些情况下,由于其内部锁的实现不合理,会导致大量线程同时等待获取一个锁对象,这会大大增加线程上下文切换的开销,降低系统的吞吐量。另外,如果连接池中的连接资源耗尽,线程会阻塞等待,从而...

    创建dbcp连接,dbcp(Spring)

    DBCP连接池还有一些其他可配置的参数,例如`maxWait`(最大等待时间),`validationQuery`(用于验证连接是否有效的SQL查询),`testOnBorrow`和`testOnReturn`(在借用或归还连接时是否执行验证)。这些参数可以...

    使用DBCP连接池所需要的jar包

    标题“使用DBCP连接池所需要的jar包”指出,为了使用DBCP,我们需要导入特定的库文件。这些库文件包括: 1. **commons-dbcp-1.4.jar**:这是DBCP的主要实现包,包含了数据库连接池的实现和相关配置类。它提供了一个...

    DBCP连接池jar文件

    使用DBCP连接池,开发者需要在应用配置中设置相关参数,例如最小连接数、最大连接数、连接超时时间、验证SQL语句等。以下是一个简单的配置示例: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp....

Global site tag (gtag.js) - Google Analytics