gpt4 book ai didi

java - 使用 Lombok 的 @Cleanup 时如何捕获异常?

转载 作者:行者123 更新时间:2023-11-30 09:24:16 25 4
gpt4 key购买 nike

我正在使用 Lombok's @Cleanup甚至当我发现它非常有用时,我也无法弄清楚如何捕获由使用干净资源的主要代码块抛出的异常。

我的代码如下:

ScriptRunner runner = null;
try {
runner = scriptRunner();

for (Resource sqlFile : sqlScripts) {
runScript(sqlFile.getFile(), runner);
}
} catch (Exception ex) {
log.error("Error found when attempting to run script", ex);
} finally {
if (runner != null) {
runner.closeConnection();
}
}

使用 Lombok,我可以这样简化上面的代码:

@Cleanup("closeConnection") ScriptRunner runner = scriptRunner();

for (Resource sqlFile : sqlScripts) {
runScript(sqlFile.getFile(), runner);
}

但我会错过捕获 for 循环执行时可能出现的任何异常的可能性。有没有什么办法可以用 Lombok 优雅地做到这一点? (即除了以编程方式使用“try/catch?”之外)

非常感谢。

最佳答案

没有。如果你想处理异常,你需要捕获它,为此你需要一个 try-catch block 。

完全披露:我是 Project Lombok 中的一员开发人员。

关于java - 使用 Lombok 的 @Cleanup 时如何捕获异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15785282/

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