3 评论

0 收藏

分享

多步骤任务不往下执行

目前正在学习spring-batch,多步骤任务下根据上一个步骤状态执行下一步时,后边的步骤不会执行, .on("*")也不会执行
. H" Q; F$ c7 b# p9 p* f8 P6 n+ ~: ?

! I! X; H  |- F( a
" V1 F: g8 W) r, t5 |2 T, k$ g
[Java] 纯文本查看 复制代码
@Component
public class MultiStepJobDemo {

    @Resource
    private JobBuilderFactory jobBuilderFactory;
    @Resource
    private StepBuilderFactory stepBuilderFactory;

    @Bean
    public Job multiStepJob() {
        // 根据上一个步骤状态执行下一步
        return jobBuilderFactory.get("multiStepJob2")
                .start(step1())
                .on(ExitStatus.COMPLETED.getExitCode()).to(step2())
                .from(step2())
                .on("COMPLETED").to(step3())
                .from(step3()).end()
                .build();

        // return jobBuilderFactory.get("multiStepJob")
        //                .start(step1())
        //                .next(step2())
        //                .next(step3())
        //                .build();
    }

    private Step step1() {
        return stepBuilderFactory.get("step1")
                .tasklet((stepContribution, chunkContext) -> {
                    System.out.println("执行步骤一操作。。。");
                    return RepeatStatus.FINISHED;
                }).build();
    }

    private Step step2() {
        return stepBuilderFactory.get("step2")
                .tasklet((stepContribution, chunkContext) -> {
                    System.out.println("执行步骤二操作。。。");
                    return RepeatStatus.FINISHED;
                }).build();
    }

    private Step step3() {
        return stepBuilderFactory.get("step3")
                .tasklet((stepContribution, chunkContext) -> {
                    System.out.println("执行步骤三操作。。。");
                    return RepeatStatus.FINISHED;
                }).build();
    }
}

1 @; \# t* G& z: p4 |
* N4 v5 b6 D8 [/ n, ^5 u, T& p+ |& A* m. N
回复

举报 使用道具

全部回复 (3)
查看全部
本帖最后由 18234759903 于 2022-9-26 15:10 编辑
2 y; q; C7 q# x" e" k$ k4 X, k- T) U1 W( }1 y2 {) T; q
企业微信截图_16641759743708.png

举报 回复 使用道具

举报 回复 使用道具

采用的版本是2.5.9,在2.2.4.RELEASE不会发生这个问题

举报 回复 使用道具

主题 1
回复 4
粉丝 0
快速回复 返回顶部 返回列表