我想自动关闭声明。
我希望通过以下条件的技术来实现它。
虽然我认为spring的事务管理器会自动关闭语句,但似乎不会在默认设置中自动关闭。
我不想在可维护性方法中尽可能多地调用close()
语句。
是否存在声明关闭的方法?
此外,是否有官方网站或文件显示没有关闭方法的原因?
答案 0 :(得分:0)
如果所有方法都必须调用close()语句,编码量会增加,并且存在遗漏生成的可能性熄灭的问题。
而且,我正在制作框架。它希望通过这样的理由尽可能地制定限制并制定一些方法。
答案 1 :(得分:0)
如果我理解你的问题,你可以使用http://commons.apache.org/dbcp/为你做结束,据我所知这是标准,所以很可能你已经在使用它,只要你使用弹簧或jndi提供您的数据库连接。 在您的配置中进行数据库连接配置 removeAbandoned =真 和 removeAbandonedTimeout = 50 有关详细信息,请参阅http://commons.apache.org/dbcp/configuration.html(最低区块)。 请注意,如果您依赖它来清理连接,则应该使用相当大的连接池。
关于为什么没有关闭方法的问题:有。
关闭Connection将关闭其所有语句。 关闭Statement将关闭其所有ResultSet。
毕竟,这样做没有好的风格。我建议您自己调用close()并使用放弃删除仅通过添加来找到您忘记这样做的地方 logAbandoned =真