关于ResultSet的问题
ResultSet rs = null;
如果需要多次使用rs,每次使用完需要rs.close()吗?
问题点数:20、回复次数:6Top
1 楼xiaopeipei2004(小裴)回复于 2005-06-03 13:54:36 得分 5
不用没次.
try{
}catch{
}finally{
rs.close();
}Top
2 楼SunFee(Sunshow)回复于 2005-06-03 13:58:25 得分 0
会多占用资源吗,还是下次使用时会自动覆盖之前的
刚才PreparedStatement用完没有close导致打开的数据库游标过多想到的这个问题Top
3 楼tangqiuzheng(恭喜发财万事如意)回复于 2005-06-03 14:04:34 得分 5
不用。java和C不一样,它垃圾回收。
比如:
rs=rs01;
rs=rs02;//到这一步为止,rs01成为垃圾,回被系统清除(称为垃圾回收)
-----------------
但是,作为对比:
rs=rs01;
rs1=rs01;
rs=rs02;//到这一步为止,rs01就不是垃圾。为什么呢?
-------
--------
综合:
1、上述中,rs rs1是变量,rs01 rs02是对象。
2、没有变量指向的对象会被当成垃圾,被处理掉。Top
4 楼tangqiuzheng(恭喜发财万事如意)回复于 2005-06-03 14:05:15 得分 5
不会多占用资源吗,是:下次使用时会自动覆盖之前的
Top
5 楼stray1718(旺仔)回复于 2005-06-03 14:06:00 得分 5
我想不会,只要用完一次以后,把连接断开就行了,每个数据库连接都很占资源,至于结果集,我认为没必要每次都closeTop
6 楼SunFee(Sunshow)回复于 2005-06-03 14:09:43 得分 0
了解,谢谢大家~Top




