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

DBCP

    博客分类:
  • Java
阅读更多

       DBCP是apache下面的一个开源的数据库连接池,谈谈几个经验

1 Connection出问题后的释放

       Connection建立成功后,如果在某次操作的时候,连接本身出现异常,可能需要废弃掉这个连接,创建新连接。当然对于mysql,支持autoReconnect的则不存在问题(Connection本身不需要废弃),但是如果不支持autoReconnect的driver,就存在这个问题。DBCP中使用的是PoolableConnection,关闭的时候,判断PoolableConnection是否close,因为这个PoolableConnection上还有代理,所以不会重复关闭,那么就判断底层的Connection的isClosed是否为true,如果是true,那么就会丢弃这个连接。JDK中Connection接口的isClosed只在Connection.close被调用后为true,在Driver的实现上,产生和数据库连接的异常后,Driver必须要自己调用close方法,才能保证这个地方让DBCP去丢弃连接。另外就是在close的时候,还调用了ConnectionFactory的passiveObject方法,这个地方出异常也会导致连接被丢弃掉。

2 关于Idle

      默认DBCP的minIdle和maxIdle都是-1,设置以后的话,对于maxIdle,如果maxIdle小于maxActive,那么在调用returnObject的时候,如果当前的idle已经等于maxIdle了,会释放掉这个连接。

3 evict

     如果设置了evict的time,那么会启动一个evictor的线程,这个是对idle的object进行检查的。基本上的逻辑是验证idle的object,删除idle超时的object,然后要保证idle的数量到达minIdle的值。

分享到:
评论
1 楼 sdh5724 2008-11-06  
tb的兄弟啊, DBCP一直都有比较严重的问题, 不是很好。 建议用C3P0吧, 我们这儿目前统一用c3p0了。

相关推荐

    commons-dbcp2-2.9.0-bin.zip

    DBCP(DataBase Connection Pool)是 apache common上的一个 java 连接池项目,也是 tomcat 使用的连接池组件,依赖 于Jakarta commons-pool 对象池机制,DBCP可以直接的在应用程序中使用。 使用DBCP会用到commons-...

    commons-dbcp-1.4-API文档-中英对照版.zip

    赠送jar包:commons-dbcp-1.4.jar; 赠送原API文档:commons-dbcp-1.4-javadoc.jar; 赠送源代码:commons-dbcp-1.4-sources.jar; 赠送Maven依赖信息文件:commons-dbcp-1.4.pom; 包含翻译后的API文档:commons-...

    开发工具 commons-dbcp2-2.1.1

    开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发工具 commons-dbcp2-2.1.1开发...

    DBCP连接池原理分析

    DBCP连接池介绍 ----------------------------- 目前 DBCP 有两个版本分别是 1.3 和 1.4。 DBCP 1.3 版本需要运行于 JDK 1.4-1.5 ,支持 JDBC 3。 DBCP 1.4 版本需要运行于 JDK 1.6 ,支持 JDBC 4。 1.3和1.4基于...

    commons-dbcp2-2.2.0-API文档-中文版.zip

    赠送jar包:commons-dbcp2-2.2.0.jar; 赠送原API文档:commons-dbcp2-2.2.0-javadoc.jar; 赠送源代码:commons-dbcp2-2.2.0-sources.jar; 赠送Maven依赖信息文件:commons-dbcp2-2.2.0.pom; 包含翻译后的API文档...

    commons-dbcp-1.4-API文档-中文版.zip

    赠送jar包:commons-dbcp-1.4.jar; 赠送原API文档:commons-dbcp-1.4-javadoc.jar; 赠送源代码:commons-dbcp-1.4-sources.jar; 赠送Maven依赖信息文件:commons-dbcp-1.4.pom; 包含翻译后的API文档:commons-...

    commons-dbcp.jar.rar

    commons-dbcp.jar dbcp数据库连接池驱动,包括pool、logging两个依赖

    DBCP依赖Jar包

    DBCP的依赖Jar包,完整的,亲测能用,欢迎下载!DBCP的依赖Jar包,完整的,亲测能用,欢迎下载!

    commons中的DBCP连接池jar

    commons中的DBCP连接池jar,用于利用dbcp链接数据库

    DBCP资源池使用jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。 单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,common-collections.jar 由于建立...

    DBCP连接池所需完整架包(全)

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗...

    dbcp所需要jar

    SpringMVC链接mysql数据库,配置需要用到的两个包class="org.apache.commons.dbcp.BasicDataSource

    DBCP数据库连接池1.2jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要3个包:commons-dbcp.jar,commons-pool.jar,commons-collections.jar由于建立...

    DBCP数据库连接池包下载

    DBCP

    commons-dbcp-1.4.jar

    DBCP是Apache提供的一款开源免费的数据库连接池!Hibernate3.0之后不再对DBCP提供支持!因为Hibernate声明DBCP有致命的缺欠!DBCP因为Hibernate的这一毁谤很是生气,并且说自己没有缺欠。

    DBCP配置所需jar包(合)

    打包好的DBCP配置相关jar包,配置DBCP时会很有用,包含commons-dbcp.jar与commons-pool.jar

    dbcp3个相关jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗...

    dbcp jar包 dbcp jar 包

    dbcp jar包 一个是dbcp的包, 一个是pool包, 两者都导入工程

    commons-dbcp-1.4

    commons-dbcp-1.4,到官网下载慢到抽筋,传这里来了。

    commons-dbcp2-2.2.0-API文档-中英对照版.zip

    赠送jar包:commons-dbcp2-2.2.0.jar; 赠送原API文档:commons-dbcp2-2.2.0-javadoc.jar; 赠送源代码:commons-dbcp2-2.2.0-sources.jar; 包含翻译后的API文档:commons-dbcp2-2.2.0-javadoc-API文档-中文...

Global site tag (gtag.js) - Google Analytics