结果集是否必须关闭

zm1313 2004-05-03 03:32:03
1、我用的是TOMCAT4.10的连接池
2、我做了一个简单的查询,输出结果
3、当我在程序中加入rs.close()时,在不断的刷新后出现错误Result已经关闭,继续刷新恢复正常。
4、我将程序中的rs.close()去掉时,不出现错误提示。

5、以上两种刷新,一次次的刷没有问题,当一直按住F5出现IE将进入白屏,进度条不动。

谁能帮我分析一下
结果集关不关闭有何影响?
刷新出问题是TOMCAT的事还是连接池的事?
...全文
400 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainworm 2004-05-04
  • 打赏
  • 举报
回复
有些程序如果不关闭rs的话,可能编译的时候会出错,而有的不会,总之多那么一句也不碍事,是个好习惯
babyfishlh 2004-05-04
  • 打赏
  • 举报
回复
顶一下
luckybeggar 2004-05-04
  • 打赏
  • 举报
回复
good
supercdh 2004-05-03
  • 打赏
  • 举报
回复
最好还是关闭。这是一个好习惯
jeke342 2004-05-03
  • 打赏
  • 举报
回复
在联接池中取得的联接一定要释放. 要不然当联接池中的可用联很快就会用完.
babyfishlh 2004-05-03
  • 打赏
  • 举报
回复
关注一下,
顺便问一句:当使用连接池
if(rs!=null)
{
rs.close();
rs=null;
}
rs close后,rs = null;有必要要吗?
或者conn.close();还需要conn= null 吗?
我的理解时conn close后,conn就算时释放到连接池了,不用再conn = null了,conn close 后应该不是null。
不知道对不对,请大家指教!这个问题困惑了几天了。
hui3zhihui 2004-05-03
  • 打赏
  • 举报
回复
养成好的习惯,用完了就关闭它!
gong1 2004-05-03
  • 打赏
  • 举报
回复
是先关闭resultset,再关闭statement,然后关闭connection
^_^。
关闭,
如不管就会一直占着内存。
练习没什么,
可是实际的开发是不允许这样的。
^_^,
最好养成好的编程习惯。
^_^
zm1313 2004-05-03
  • 打赏
  • 举报
回复
1、我没有给rs赋初值
1_、现在我将rs=null;rs = ...;
2、关闭时原先是用的rs.close()
2_、if(rs!=null){rs.close();rs=null}
我想知道我前后两种方法,区别是什么?
ResultSet ,Statement,Connection的关闭顺序有什么说法没有

lhbf 2004-05-03
  • 打赏
  • 举报
回复
及时关掉用过的资源是一个良好的习惯。
BillyW 2004-05-03
  • 打赏
  • 举报
回复
每次用完以后最好
1.关闭ResultSet
2.关闭Connection
CoolAbu 2004-05-03
  • 打赏
  • 举报
回复
如果结果集不关闭,又没有用连接池,那么在并发访问很多的情况下容易把服务器搞Down掉。

一般不关闭会导致占用资源越来越多,最终服务器Crash掉,最好还是及时释放。

刷新出现问题应该是连接池的原因,它都有一个最大连接数。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧