Spring Batch - 根据条件执行一组步骤'x'

时间:2015-09-16 19:36:08

标签: spring-batch

我需要执行特定次数的一系列步骤..任何关于在Spring Batch中执行此操作的最佳方法的指针。我能够执行单步'x'次。但我的要求是执行一系列步骤 - 基于条件'x'次。任何指针都会有所帮助。

由于 拉克希米

2 个答案:

答案 0 :(得分:0)

你可以把工作中的所有步骤多次开始整个工作。有多种方式,如何在春季批次中实现工作。看看joboperator和启动器,然后简单地实现一个循环启动作业。

您可以在初始化整个spring-context之后执行此操作,因此不会产生任何开销。但是你必须注意你的bean的范围,特别是读者和作者。

根据您对失败处理和重启的需求,您还要注意如何管理作业和步骤的执行上下文。

答案 1 :(得分:0)

您可以使用JobExecutionDecider

模拟SB循环
  1. 把它放在所有步骤前面。
  2. x存储在作业执行上下文中,并检查x值 decider:如果x等于desidered值,则移至'END'或增加它 然后转到第一步。
  3. 在最后一步之后回到开始(决策者)。