|
|
1
6
..基本上:
|
|
|
2
5
我认为在这种情况下,你确实想使用finally,因为你想关闭这些连接。
我认为设计中的缺陷在于获取连接并以相同的方法执行查询。我建议将两者分开。服务类或方法知道工作单元。它应该获取连接,将其传递给执行查询的另一个类,并在完成时关闭连接。这样,查询方法可以抛出遇到的任何异常,并将清理工作留给负责连接的类或方法。 |
|
|
3
4
实现这种行为的一种方法是将“finally”块中的语句移动到“try”块的底部。这样,当抛出异常时,它们不会被执行,但在所有其他语句之后,否则它们会被执行。 编辑: 经过进一步讨论,似乎在你的情况下,你确实想使用“finally”。我建议您在尝试关闭连接之前,先检查连接是否已关闭。 |