Spring批处理:如果没有写入项目,则停止批处理作业

时间:2018-05-02 21:19:33

标签: java spring spring-batch batch-processing

我正在从事春季批处理工作。流程如下所示

步骤1 :(读取,处理,写入File1)

第2步:邮件条目

第3步:(读取,处理,写入File2)

第4步:File2的邮件条目。

如果没有写任何项目,我想跳过邮寄步骤。

我遇到了像

这样的决策控制
<batch:decision id="decision" decider="com/Decider">
        <batch:next on="FAILED" to="step_3"/>
        <batch:next on="COMPLETED" to="step_2"/>
</batch:decision>

但是如何从上一步到这个决策类获得写入计数?

1 个答案:

答案 0 :(得分:2)

JobExecutionDecider#decide有一个StepExecution参数,您可以在其中找到上一步执行期间写入的项目数(StepExecution#getWriteCount