Java:结果集已经关闭是是什么异常?

有哪位好心朋友知道:在做Java在Model层开发时,在做数据库数据查询时,执行抛出一个异常:结果集已经关闭,如果能有一个解决方案更好。谢谢了补充一下,当一个用户访问时,... 有哪位好心朋友知道:在做Java在Model层开发时,在做数据库数据查询时,执行抛出一个异常:结果集已经关闭,如果能有一个解决方案更好。谢谢了
补充一下,当一个用户访问时,不会有这个异常,但是如果有很多用户访问时,偶尔会出现这种情况....难道是还要用多线程或者线程同步?
展开
 我来答
from_rr
推荐于2016-06-24 · TA获得超过1138个赞
知道小有建树答主
回答量:318
采纳率:0%
帮助的人:347万
展开全部
根据你的问题补充,你的问题很有可能出在数据库连接的共享上。当有多个线程公用一个连接时,一个用完,关闭了,但是另外还是仍然用在那个连接,但是那个连接的结果集可能已经关闭,或者连接本身就已经关闭了。这样就会造成系统的不稳定。
建议你仔细检查代码。如果你有数据库连接池,再看看连接池有没有问题,如果是用第三方的连接池,看看他的官网,有没有说有什么bug。
最后一招,线程自己调用自己的连接。
Jseven_jy
2010-09-05 · TA获得超过8123个赞
知道大有可为答主
回答量:2499
采纳率:100%
帮助的人:1351万
展开全部
结果集 ResultSet关闭了。。即你调用了他的close方法。。

然后你还继续从里面取数据。。即调用它的next方法。。就会报这个异常了。。

肯定是你的循环里面关闭了他。。

关闭要写在循环外面。。

while(rs.next()) {
你在这里面写了rs.close();
}

要写在外面哈。。应该是你不细心造成的。。仔细检查下哈。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dnastar
2010-09-05 · TA获得超过716个赞
知道小有建树答主
回答量:286
采纳率:50%
帮助的人:302万
展开全部
sql执行后,从数据库获得的结果集合ResultSet,如果关闭后再试图取得记录,就会报这个异常。当然,还有一种情况是,在没有获得数据时(sql运行前,或者sql执行出错等)试图操作结果集,也会报这个异常。

具体解决方法要看程序源码debug,看哪里出问题,光看一个异常是无法知道哪里出问题的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逐鹿IT
2010-09-05 · TA获得超过3170个赞
知道大有可为答主
回答量:3522
采纳率:0%
帮助的人:2899万
展开全部
把关闭结果集的代码放到后面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
风远道而归
2010-09-05 · TA获得超过379个赞
知道答主
回答量:132
采纳率:0%
帮助的人:81.1万
展开全部
看看你的fanally{
………………
}部分吧!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式