Spring batch Spring批处理:复合tasklet?
我想创建一个可以由多个tasklet组成的复合tasklet类 像这样:Spring batch Spring批处理:复合tasklet?,spring-batch,Spring Batch,我想创建一个可以由多个tasklet组成的复合tasklet类 像这样: public class FinishingComposableTasklet implements Tasklet { private List<Tasklet> tasklets; public FinishingComposableTasklet(List<Tasklet> tasklets) { this.tasklets = tasklets; } @Over
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;
}
}
public类FinishingComposableTasklet实现Tasklet{
私有列表微线程;
公共完成composabletasklet(列出tasklet){
this.tasklets=tasklets;
}
@凌驾
public RepeatStatus execute(StepContribution贡献,ChunkContext ChunkContext)引发异常{
for(微线程微线程:微线程){
tasklet.execute(贡献,chunkContext);
}
返回RepeatStatus.FINISHED;
}
}
我有一种直觉,这实际上是不正确的:
FINISHED
然后如果我将创建这样的复合-这会破坏我的作业的重新启动能力吗?您是否需要一个复合tasklet类或包含多个tasklet的作业?您可以用xml定义该作业。我知道我可以将其定义为一个步骤。但是我的定义会非常大,我不确定对于每一件小事我都必须创建单独的步骤。如果您使用springbatch java api builder将taskletsteps添加到作业中,那么每个tasklet都将使用一行程序。您还需要一行将您的tasklet添加到您的tasklet列表中。您是否需要由多个tasklet组成的复合tasklet类或作业?您可以用xml定义该作业。我知道我可以将其定义为一个步骤。但是我的定义会非常大,我不确定对于每一件小事我都必须创建单独的步骤。如果您使用springbatch java api builder将taskletsteps添加到作业中,那么每个tasklet都将使用一行程序。您还需要一行代码将您的小任务添加到小任务列表中。