Spring batch 我的spring批处理步骤在达到构建后继续循环
本节从服务器读入文件,对其进行处理、写出并存档Spring batch 我的spring批处理步骤在达到构建后继续循环,spring-batch,Spring Batch,本节从服务器读入文件,对其进行处理、写出并存档 @Bean public Step step1() { log.info("Made if to step1"); System.out.println("Made it to Step 1"); return this.stepBuilderFactory.get("step1") .<
@Bean
public Step step1() {
log.info("Made if to step1");
System.out.println("Made it to Step 1");
return this.stepBuilderFactory.get("step1")
.<PaymentTransaction, PaymentTransaction>chunk(10)
.reader(paymentTransactionItemReader())
.writer(paymentTransactionItemWriter())
.build();
}
@Bean
public JobExecutionDecider decider() {
System.out.println("Made it to the decider");
return (jobExecution, stepExecution) -> new FlowExecutionStatus("Success"); }
@Bean
public FlowJobBuilder job() {
return jobBuilderFactory.get("BenefitIssuance")
.start(step1())
.next(decider())
.on("Success")
.end()
.build();
}
@Bean
公共步骤第1步(){
日志信息(“根据步骤1生成”);
System.out.println(“进入步骤1”);
返回此.stepBuilderFactory.get(“step1”)
.chunk(10)
.reader(paymentTransactionItemReader())
.writer(paymentTransactionItemWriter())
.build();
}
@豆子
公共工作执行决策者{
System.out.println(“到达决策者”);
return(jobExecution,stepExecution)->newflowExecutionStatus(“Success”);}
@豆子
公共FlowJobBuilder作业(){
返回jobBuilderFactory.get(“收益发行”)
.start(步骤1())
.next(decider())
.关于(“成功”)
(完)
.build();
}
但是,当它在最后到达build()步骤时,它会循环回读卡器,如注释中所述,我不明白为什么
job()
方法返回的是FlowJobBuilder
,而不是作业
。以下作业定义不会在同一步骤上循环:
@Bean
public Job job() {
return jobs.get("job")
.start(step1())
.next(decider())
.on("Success")
.end()
.build()
.build();
}
job()
方法是否打算返回FlowJobBuilder
,而不是作业
?您试图运行的作业的定义在哪里?