“我的工作”由多个流程组成。我遇到需要重复执行流多次的情况。
我搜索了Internet,但是找不到这种情况的一个例子。我尝试使用on()to()构造,但无法正常工作。
考虑以下示例:
@Bean
public Job job() {
Flow deleteDataFrom UIflow = new FlowBuilder<SimpleFlow>("processOrderflow")
.start(step1())
.next(step2())
.build();
Flow flow2 = new FlowBuilder<SimpleFlow>("flow2")
.start(step3())
.build();
return this.jobBuilderFactory.get("job")
.start(processOrderflow)
.next(flow2)
.end()
.build();
}
@Bean
public Step step1(){
Tasklet taskLeiD = new Tasklet() {
@Override
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
System.out.println("Delete data from datasource A");
return RepeatStatus.FINISHED;
}
};
return this.stepBuilderFactory.get("deleteDataFromA").tasklet(taskLeiD).build();
}
@Bean
public Step step2(){
Tasklet a = new Tasklet() {
@Override
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
System.out.println("Delete data from datasource B");
return RepeatStatus.FINISHED;
}
};
return this.stepBuilderFactory.get("deleteDataFromB").tasklet(a).build();
}
@Bean
public Step step3(){
Tasklet a = new Tasklet() {
@Override
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {
System.out.println("Delete data from datasource C");
return RepeatStatus.FINISHED;
}
};
return this.stepBuilderFactory.get("deleteDataFromC").tasklet(a).build();
}
我有一个订单清单。对于列表中的每个订单,我要执行一次processOrderflow。我怎样才能做到这一点?如果有人能指出正确的方向,我将不胜感激。
上面的示例是一个简单的示例,但实际上,我要执行多次的流程只有很少的子流程,并且每个子流程都有多个步骤。因此,最终的问题是如何像这样的流程多次执行?