【发布时间】:2014-08-11 07:52:52
【问题描述】:
如果在每次查询之前创建语句,左开结果集/语句消耗的资源是多少?
在这种情况下,垃圾回收是否关闭了结果集/语句?
【问题讨论】:
如果在每次查询之前创建语句,左开结果集/语句消耗的资源是多少?
在这种情况下,垃圾回收是否关闭了结果集/语句?
【问题讨论】:
如果不关闭连接,您可能会承担后果。 maximum open cursors exceeded 您可能会遇到异常。
来自Java doc
默认情况下,每个 Statement 对象只能打开一个 ResultSet 对象 同时。因此,如果读取一个 ResultSet 对象是 与另一个阅读交错,每个必须已经生成 通过不同的 Statement 对象。 Statement中的所有执行方法 接口隐式关闭语句的当前 ResultSet 对象,如果 打开一个存在。
所以你需要显式关闭所有 JDBC 资源。
【讨论】: