![[SpringBatch 연재 08] CompositeItemProcessor 으로 여러단계에 걸쳐 데이터 Transform하기](https://devocean.sk.com/thumnail/2024/10/22/28954aaf79694daff24eae993730b632354b0632bf2ddd2b26265d25e3f5f5ad.png)
백엔드
[SpringBatch 연재 08] CompositeItemProcessor 으로 여러단계에 걸쳐 데이터 Transform하기
두줄요약
Spring Batch의 CompositeItemProcessor로 여러 ItemProcessor를 순차 결합하는 방법을 소개했습니다. 이름·성별 변환과 나이 증가를 분리해 단계별 처리와 재사용성을 높였습니다.
핵심 내용
CompositeItemProcessor로 여러ItemProcessor를 순차 연결해 데이터 변환 단계 분리- 예시에서 이름·성별 소문자 변환과 나이에 20 추가를 각각 별도 프로세서로 구현
delegates에 순서대로 등록해 체인 방식으로 처리 흐름 구성
선택 이유
- 단계별 처리로 코드 명확성 향상
- 프로세서 재사용으로 다른 Job에서도 활용 가능
- 다양한 변환 로직 조합에 유연
장단점
- 장점: 역할 분리, 재사용성, 조합 유연성
- 단점: 설정 복잡도 증가, 단계 증가에 따른 성능 저하 가능성
적용해볼 점
- 변환 책임이 여러 개로 나뉜 배치에서 단계별 Processor 분리
- 처리 순서가 결과에 영향을 주는 경우
delegates배열 순서 관리
