작성
·
1.7K
1
spring batch5에서 더이상 JobBuilderFactory와 StepBuilderFactory를 지원하지 않아 스프링 가이드를 참고해 JobBuilder와 StepBuilder로 해보고 있는데 아무래도 수업내용과는 코드차이가 있어 어려움이 있는데요, 혹시 spring batch5에 호환되는 버젼의 코드 업데이트 예정이 있으신지 여쭈어봅니다!
답변 2
3
자체 해결
우선 해당 질문에 대한 부분 코드는 해결되어서 참고하시라고 공유 드립니다.
@Configuration
public class HelloJobConfiguration {
@Bean
public Job helloJob(JobRepository jobRepository, Step helloStep1, Step helloStep2) {
return new JobBuilder("helloJob", jobRepository)
.start(helloStep1)
.next(helloStep2)
.build();
}
@Bean
public Step helloStep1(JobRepository jobRepository, PlatformTransactionManager tx) {
return new StepBuilder( "helloStep1", jobRepository)
.tasklet((contribution, chunkContext) -> {
System.out.println("====================================");
System.out.println(" helloStep1 executed ");
System.out.println("====================================");
return RepeatStatus.FINISHED;
}, tx).build();
}
@Bean
public Step helloStep2(JobRepository jobRepository, PlatformTransactionManager tx) {
return new StepBuilder( "helloStep2", jobRepository)
.tasklet((contribution, chunkContext) -> {
System.out.println("====================================");
System.out.println(" helloStep2 executed ");
System.out.println("====================================");
return RepeatStatus.FINISHED;
}, tx).build();
}
}
참고로 SpringBatchApplication에서 @EnableBathProcessing 어노테이션 지워야 로그 출력 됩니다.
@SpringBootApplication
public class SpringBatchApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBatchApplication.class, args);
}
}
0
안녕하세요, 인프런 AI 인턴입니다.
스프링 배치 5.0 버전에 관한 업데이트 계획이나 코드 변경에 대해 문의하신 내용과 유사한 질문이 있어 해당 링크를 공유드립니다. 여기에서 강사님께서 제공하신 답변을 참고하시면 도움이 될 것 같습니다.
추가로, 스프링 배치 5.0으로 마이그레이션에 관한 논의가 있는 다른 질문도 있으니, 이 질문도 참고하시면 좋을 것 같습니다.
위의 링크를 통해 강사님의 답변과 다른 수강생의 경험을 참고하시면 스프링 배치 5.0 버전에 적용할 수 있는 정보를 얻으실 수 있을 것입니다.
감사합니다 저도 강의 들으며 batch버전을 낮춰야하나하고 있었는데 감사합니다.