JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc

JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc

ID:61903532

大小:167.00 KB

页数:5页

时间:2021-03-26

JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc_第1页
JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc_第2页
JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc_第3页
JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc_第4页
JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc_第5页
资源描述:

《JDBC中-如果ResultSet-和-Statement-不关闭的话-会有什么影响.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、相关文章: ·Tomcat连接池原理讨论·hibernate3.2在容器数据源下的游标过多问题·java线程死锁与内存溢出推荐圈子:D语言更多相关推荐感觉上好象是只要把connection给关闭了,系统就能正常运行了。那在查询或是其实操作中,如果只关闭Connection,不作ResultSet和Statement的关闭的话,对系统性能是否会有影响呢。或者是其实方面的不良影响。声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。推荐链接·下载免费的IBMDB2Express

2、-C数据库·在繁琐中挣扎还是简化自主管理?·5月份Struts2.0最新技术专题系列讲座返回顶楼    ·robbin·等级:··文章:5840·积分:2265·来自:上海发表时间:2005-01-10如果你不使用连接池,那么就没有什么问题,一旦Connection关闭,数据库物理连接就被释放,所有相关Java资源也可以被GC回收了。·但是如果你使用连接池,那么请注意,Connection关闭并不是物理关闭,只是归还连接池,所以PreparedStatement和ResultSet都被持有,并且实

3、际占用相关的数据库的游标资源,在这种情况下,只要长期运行,往往就会报“游标超出数据库允许的最大值”的错误,导致程序无法正常访问数据库。返回顶楼    00请登录后投票·xiaoyu·等级:··文章:956·积分:1359·来自:广东·发表时间:2005-01-10补充:其实这个要看你用的是什么数据库,然后决定了你的JDBC,然后呢,决定了实现这个JDBC的方法,然后呢就决定了问题。建议关闭。返回顶楼    00请登录后投票·sevenbamboos·等级:··文章:253·积分:413·来自:上海

4、·发表时间:2005-01-14只开不关的话可能会把数据库游标耗光返回顶楼    00请登录后投票·seantan·等级:发表时间:2005-01-26robbin写道··文章:23·积分:262·如果你不使用连接池,那么就没有什么问题,一旦Connection关闭,数据库物理连接就被释放,所有相关Java资源也可以被GC回收了。但是如果你使用连接池,那么请注意,Connection关闭并不是物理关闭,只是归还连接池,所以PreparedStatement和ResultSet都被持有,并且实际占用

5、相关的数据库的游标资源,在这种情况下,只要长期运行,往往就会报“游标超出数据库允许的最大值”的错误,导致程序无法正常访问数据库。不使用连接池的情况下,如果你直接关闭连接话,对应的Statement,ResultSet对象都应该由DriverVendor来帮你关闭,即由他来进行资源的释放.这个是由JDBC3.0规范中提到的.因为有些数据库资源可能属于GC不能释放的范围.对于连接池的实现而言,有时间我看看Oracle和Postgres的实现再下定论吧.但是我认为出现上面的情况应该理解成为连接池vend

6、or的一种没有按规范来实现的问题.如果用数据库自己实现的连接池应该不会有这样的情况出现.返回顶楼    00请登录后投票·nihongye·等级:··文章:849·积分:1513·来自:深圳·发表时间:2005-01-26weblogic6.x的连接池好像会关.返回顶楼    00请登录后投票·firebody·等级:··文章:922·积分:3075·发表时间:2005-01-26robbin写道如果你不使用连接池,那么就没有什么问题,一旦Connection关闭,数据库物理连接就被释放,所有相关

7、Java资源也可以被GC回收了。但是如果你使用连接池,那么请注意,Connection关闭并不是物理关闭,只是归还连接池,所以PreparedStatement和ResultSet都被持有,并且实际占用相关的数据库的游标资源,在这种情况下,只要长期运行,往往就会报“游标超出数据库允许的最大值”的错误,导致程序无法正常访问数据库。嘿嘿,如果这样的话,那就说明连接池的设计有漏洞了。返回顶楼    00请登录后投票·sun_wind·等级:··文章:58·积分:221·发表时间:2005-02-05引用

8、如果你不使用连接池,那么就没有什么问题,一旦Connection关闭,数据库物理连接就被释放,所有相关Java资源也可以被GC回收了。但是如果你使用连接池,那么请注意,Connection关闭并不是物理关闭,只是归还连接池,所以PreparedStatement和ResultSet都被持有,并且实际占用相关的数据库的游标资源,在这种情况下,只要长期运行,往往就会报“游标超出数据库允许的最大值”的错误,导致程序无法正常访问数据库。使用连接池时也应该会关闭PreparedStateme

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。