首页 > 代码库 > c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
背景:
C3P0连接池
jdbc.maxPoolSize=1
jdbc.minPoolSize=1
jdbc.initialPoolSize=1
Connection conn = dataSource.getConnection()
执行close方法后,connection就真的是关闭了而不是放回连接池里面待用。
网上找了下很多人都说使用连接池后,connection的close方法不是真正的关闭,只是放回池里待用。
我从来都喜欢追根究底,其实就是好奇心害死猫。所以也忍不住测试了。
第一次:
com.mchange.v2.c3p0.impl.NewProxyConnection@1a637d2 [wrapping: com.mysql.jdbc.JDBC4Connection@19ad782]
第二次:
com.mchange.v2.c3p0.impl.NewProxyConnection@434916 [wrapping: com.mysql.jdbc.JDBC4Connection@19ad782]
上面说法应该是正确的。
com.mysql.jdbc.JDBC4Connection@19ad782 是同一个对象,即同一个连接。
c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。