WEBBOOK CHAPTER

실무 스프링 배치 6: 3장. Spring Batch 6 인프라 선택

3장. Spring Batch 6 인프라 선택

6.0은 resourceless가 기본이 되어 작은 작업을 가볍게 시작할 수 있다. 하지만 재시작·운영 조회가 필요한 정산은 JDBC JobRepository를 쓴다. @EnableBatchProcessing, @EnableJdbcJobRepository, @EnableMongoJobRepository 선택을 명시한다.

Spring Boot 자동 구성과 @EnableBatchProcessing을 섞으면 기대가 달라질 수 있다. Boot에서는 해당 annotation이 자동 구성을 물러나게 하므로 한 방식만 선택하고 테스트한다.

6.0에서는 infrastructure API의 package가 org.springframework.batch.infrastructure.*로 이동했다. 예제의 ItemProcessor, ItemWriter, FlatFileItemReader import가 여기에 속한다. JobStep도 각각 core.job.Job, core.step.Step을 쓴다. Boot starter만 넣고 JDBC writer를 사용하면 DataSource가 만들어지지 않을 수 있으므로 예제는 spring-boot-starter-jdbc를 명시한다. 이 세 항목은 5→6 migration 때 컴파일 test로 가장 먼저 확인한다.