如何查询数据库连接不释放,和java程序一直进行链接,这种问题怎么处理

 我来答
紫石子freedom
推荐于2017-12-15 · 超过24用户采纳过TA的回答
知道答主
回答量:112
采纳率:0%
帮助的人:55.8万
展开全部
你现在遇到了连接不释放的问题?

在每一次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
llei32wang
2012-11-08 · TA获得超过2736个赞
知道大有可为答主
回答量:1478
采纳率:60%
帮助的人:1390万
展开全部
不调用close()方法就不会释放连接,可以继续使用connction对象的。不过长连接一旦连接出问题断开会出空指针错误。建议写个连接池,每次从池中取连接,用完了把连接返回到池中。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
0512556600
2012-11-08 · TA获得超过577个赞
知道小有建树答主
回答量:755
采纳率:0%
帮助的人:413万
展开全部
一般是这样的,打开连接 --> 取数据处理-->关闭连接,下次再查重复刚才的操作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
duzc2
2012-11-08 · TA获得超过2512个赞
知道大有可为答主
回答量:1987
采纳率:50%
帮助的人:2055万
展开全部
用完调用close方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式