如何查询数据库连接不释放,和java程序一直进行链接,这种问题怎么处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查询数据库连接不释放,和java程序一直进行链接,这种问题怎么处理相关的知识,希望对你有一定的参考价值。
你现在遇到了连接不释放的问题?在每一次openconnection后。你拥有 connection、Resultset、Statement的对象
这三个东西需要依次释放 不然连接将持续开启。
依次执行
rs.close();
stmt.close();
conn.close();
才能释放当前连接。追问
我用的是数据库连接池,spring控制的,但是有时候执行了一个sql或者什么原因,就一直连接不释放,这样会带动其他的操作也连接不释放了。
追答请检查:
#回收被遗弃的(一般是忘了释放的)数据库连接到连接池中。 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
以上是关于如何查询数据库连接不释放,和java程序一直进行链接,这种问题怎么处理的主要内容,如果未能解决你的问题,请参考以下文章