2016-06-28 31 views
0

我必须在Java EE中编写一个批处理,我想问你是否最好有2个工作或2个工作的一个工作?2个工作和2个任务之间的JavaEE批处理

实现批处理的两种方式有什么区别?

让我解释我的情况: 我必须从db获取记录,然后详细说明它们,更新数据库中的记录,最后我必须生成带有更新记录的输出文件。

回答

1

通常在Java Batch中,如果您有两个相关任务将一起执行的用例,那么您可能希望将它们定义为单个作业中的两个步骤。

如果作业失败或停止,批处理容器允许您在上一步从作为输入数据流的检查点处重新开始作业。 它还具有基于退出状态的内置条件转换(例如,继续执行步骤2,而对来自步骤1的“错误”退出状态的作业失败)。

如果您定义了两个单独的作业,您可能最终需要自己构建相同的业务流程。

您还可以通过参数化获得一些好处,例如,如果步骤1中的输出文件用作步骤2中的输入,则可以使用单个值轻松对它们进行参数化。