Spring批处理:复合tasklet?

时间:2016-10-07 11:10:04

标签: spring-batch

我想创建可以由多个tasklet组成的复合tasklet类。

像这样:

public class FinishingComposableTasklet implements Tasklet {

  private List<Tasklet> tasklets;

  public FinishingComposableTasklet(List<Tasklet> tasklets) {
    this.tasklets = tasklets;
  }

  @Override
  public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
    for (Tasklet tasklet : tasklets) {
      tasklet.execute(contribution, chunkContext);
    }
    return RepeatStatus.FINISHED;
  }
}

我有一种直觉,认为这实际上是不对的:

  1. 我需要以某种方式从subasklet的
  2. 汇总结果
  3. 如果我需要聚合它们 - 返回FINISHED可能不正确 然后
  4. 由于某种原因
  5. ,此类在标准spring批处理类中不存在

    我的问题是 - 我应该如何将逻辑的较小部分组合成一个Step / Tasklet / Callable?

    如果我要创建这样的复合材料 - 这会破坏我工作的重启能力吗?

0 个答案:

没有答案