Java 构建相互依赖的事件链

标签 java spring spring-boot

我有一组 boolean 类型的方法,用于设置。如果业务逻辑成功执行,每个方法都会返回 true;如果出现问题,则返回 false。我想首先失败就打破链条。

有什么好的做法吗?

ATM 我正在​​做这样的事情:

if (taskIsDone(task) && taskGenerateReport(task) && taskReportIsDone(task) && taskProcessReport(task)){
    log.info("Processing of task {} is done", task.getName());
} else {
    log.error("Task {} finished with error", task.getName());
}

类似的东西在我的开发环境中有效,但如果由于任何原因方法顺序会改变逻辑,这样的场景是无用的。

谁能给我一个提示,告诉我如何做对吗?

最佳答案

正如其他人所说,执行顺序是从左到右。

在您的情况下,我会调用 task.isDone()task.generateReport() 等,因为它与您的情况下可能是域对象的任务相关。

关于Java 构建相互依赖的事件链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60093853/

相关文章:

java - 贾斯珀异常 : equal symbol expected

java - 如何从 application.yml 映射时间属性?

java - 在gradle中导入Apache速度会降级HttpServletResponse

java - 数组存储两个不同类的对象?

java - Facebook Android SDK 的 key 哈希

java - 未加载广告时使用空间android

java - StateMachineBuilder 计时器崩溃

javascript - 广播问答 Activity

java - "@Where"和 "cascade = CascadeType.ALL"不同时工作

java - JAX-WS 为 IBM websphere、IBM Web 服务客户端添加寻址