2

到目前为止,我从未见过 PreparedStatement throws an SQLException on close,但我想知道它何时会抛出异常以及处理它的最佳实践是什么。

谢谢你。

4

1 回答 1

1

我会将其记录为警告。如果这种情况不时发生,我想调查这里发生了什么。

如果这是事务的一部分,我会中止并回滚事务(这可能也会失败,但我不想继续使用此连接)。所以我想,这意味着:如果方法已经有此异常,则作为 SQLException 重新抛出,否则作为 RuntimeException (因为这根本不应该发生,而且我不想因此而弄乱我声明的异常)。

如果这是在最后的清理步骤中提交之后,我会忽略它并继续尝试关闭其余的连接。

于 2013-01-21T03:30:14.153 回答