有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在@JobScope上创建springbatch作业本身?

有没有可能使Job本身成为@JobScope

我想定期运行作业。作业本身应找到数据库id,并基于此id执行后续步骤:

@Bean
public Job job() throws Exception {
    Long id = dao.findSomeId();
    return jobBuilderFactory.get("name")
            .start(import())
            .next(step(id))
            .build();
}

private Step step(Long id) {
   return stepBuilder.get("step").tasklet(new Tasklet() {
        @Override execute() {
            //execute a task based on the id. Eg a database cleanup
            return RepeatStatus.FINISHED;
        }
   }).build();
}

问题:dao.findSomeId()语句在第一次作业初始化期间仅执行一次。此后,对于任何作业执行,id始终保持不变


共 (0) 个答案