JAVA·Spring
Spring Batch에서 ItemReadListener가 걸리지 않을 때
무한열정
2023. 4. 3. 15:35
다음과 같은 상태에서 ItemReadListener가 걸리지 않았다.
@Bean public Step step1() throws Exception { return stepBuilderFactory.get("step1") .chunk(100) .reader(pagingItemReader()) //.reader(customItemReader()) .listener(new CustomReadListener()) .processor((ItemProcessor) item -> item) .listener(new CustomProcessListener()) .writer(customItemWriter()) .listener(new CustomWriteListener()) .taskExecutor(taskExecutor()) // .throttleLimit(2) .build(); } |
정석으로 Generic을 설정해야 하나
귀찮아서 생략하고 테스트하니 구동은 잘 되었다.
근데 ItemReadListener가 걸리지 않아 삽질을 좀 했다.
Input Chunk Type과 Output Chunk Type을 선언하여 주면 해결된다.
@Bean public Step step1() throws Exception { return stepBuilderFactory.get("step1") .<Customer, Customer>chunk(100) .reader(pagingItemReader()) //.reader(customItemReader()) .listener(new CustomReadListener()) .processor((ItemProcessor<Customer, Customer>) item -> item) .listener(new CustomProcessListener()) .writer(customItemWriter()) .listener(new CustomWriteListener()) .taskExecutor(taskExecutor()) // .throttleLimit(2) .build(); } |