gpt4 book ai didi

java - 如何避免 Java 中意外关闭 SQL 连接?

转载 作者:行者123 更新时间:2023-12-01 16:41:51 24 4
gpt4 key购买 nike

目前我正在做的事务管理是:

Connection connection = getConnection();
connection.setAutoCommit(false);
updateTableX ( connection, ... );
updateTableY ( connection, ... );
connection.commit();
closeConnection();

我想知道是否可以避免在“updateTableX”方法中关闭连接。因为如果有人意外关闭连接,那么我的 updateTableY 将不会有连接,并且会引发异常。

最佳答案

只是纪律。一般来说,方法不应该尝试负责关闭作为参数传递给它们的东西 - 除了创建一个新对象来包装现有对象的情况。

避免在 updateTableX 中关闭连接的方法只是确保您不会在代码中调用 close() 。这实际上与任何其他错误没有什么不同。如何阻止 updateTableX 任意更新不同的表、抛出异常或执行任何其他不该做的事情?代码审查、单元测试、集成测试、手动测试等...

我的意思是,您可以编写一个Connection实现,它包装另一个连接并通过除了close()<代理所有方法 但这听起来像是浪费时间 - 如果您不相信相关开发人员不会关闭连接,您是否相信他们能够正确编写其余代码?

关于java - 如何避免 Java 中意外关闭 SQL 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1067486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com