我正在寻找一种更优雅的方法来处理那些我们需要使用资源进行嵌套尝试的问题,这些资源不是相互依赖的。这种情况的例子:
try (MDC.MDCCloseable test= MDC.putCloseable("test", test)) {
try (MDC.MDCCloseable paw= MDC.putCloseable("paw", test.getPaw().toString())) {
try (MDC.MDCCloseable tru = MDC.putCloseable("tru", paw.getTRU().toString())) {
try (MDC.MDCCloseable mdcKey = MDC.putCloseable("rtu", paw.getKey())) {
try (MDC.MDCCloseable rtu= MDC.putCloseable("rtu", "test")) {
try (MDC.MDCCloseable ito= MDC.putCloseable("ito", rtu.getIto())) {
...
}
}
try (MDC.MDCCloseable eht = MDC.putCloseable("eht", "eht")) {
try (MDC.MDCCloseable epr= MDC.putCloseable("epr", eht.getEPR())) {
}
}
try (MDC.MDCCloseable lkt = MDC.putCloseable("lkt", "lkt")) {
try (MDC.MDCCloseable plo= MDC.putCloseable("plo", lkt.getPlo())) {
}
}
}
}
}
}发布于 2022-07-01 16:07:05
为什么不把所有资源都放在同一个try上呢?
以下是简化的示例:
try (MDC.MDCCloseable test= MDC.putCloseable("test", test);
MDC.MDCCloseable paw= MDC.putCloseable("paw", test.getPaw().toString()) {
/// etc, etc.
}https://stackoverflow.com/questions/72831697
复制相似问题