스프링 부트 배치는 대용량 데이터를 처리하는 기술로만 알고 있어서, 이번 기회에 한번 개념만 살펴보았습니다.스프링 부트 배치를 왜 사용하는지 장점부터 살펴보았습니다.대용량 데이터 처리에 최적화되어 고성능을 발휘합니다.효과적인 로깅, 통계 처리, 트랜잭션 관리 등 재사용
@JobScope와 @StepScope는 스프링의 기본 Scope인 싱글톤 방식과는 대치되는 역할입니다.Bean의 생성 시점이 스프링 애플리케이션이 실행되는 시점이 아닌 @JobScope, @StepScope가 명시된 메서드가 실행될 때까지 지연시키는 것을 의미합니다.
위에서 살펴본 스프링 부트 배치 컴포넌트들을 이용하여 커뮤니티 사이트에 가입한 회원 중 1년이 지나도록 상태 변화가 없는 회원을 휴먼회원으로 전환하는 배치 예제코드를 작성하였습니다.Java 8Gradle 6.3Spring Boot 2.3.0 RELEASEIntelliJ
Cursor 방식은 DB와 커넥션을 맺은 후, Cursot를 한칸씩 옮기면서 지속적으로 데이터를 가져옵니다. DB와 어플리케이션 사이 통로를 하나 연결해서 하나씩 데이터를 가져온다고 생각하면 됩니다.JdbcCursorItemReaderHibernateCursorItem