본문 바로가기
Spring Batch

1 - @EnableBatchProcessing

by 홍굴이 2021. 11. 3.

@EnableBatchProcessing

  • 총 4개의 설정 클래스를 실행시키며 스프링 배치의 모든 초기화 및 실행 구성이 이루어진다.
  • 스프링 부트 배치의 자동 설정 클래스가 실행됨으로 빈으로 등록된 모든 Job을 검색해서 초기화와 동시에 Job을 수행하도록 구성됨.

@EnableBatchProcessing 어노테이션에 의해 아래 번호 순서대로 실행된다. 

  1. EnableBatchProcessing
  2. SimpleBatchConfiguration
    • JobBuilderFactory와 StepBuilderFactory 생성
    • 프록시 객체로 생성 -> Job, Step의 빈 생성 시점은 Job, Step이 실행되는 시점
  3. BatchConfigurerConfiguration
    • BasicBatchConfigurer : 프록시 객체의 실제 대상 객체를 생성하는 설정 클래스
    • JpaBatchConfigurer : Jpa 관련 객체를 생성하는 설정 클래스
  4. BatchAutoConfiguration
    • 스프링 배치가 초기화 될 때 자동으로 실행되는 설정 클래스
    • Job을 수행하는 JobLauncherApplicationRunner 빈을 생성한다.

SimpleBatchConfiguration

 

createLazyProxy 메서드를 통해 프록시 객체로 생성되는 것을 확인


BatchConfigurerConfiguration

 

BasicBatchConfigurer와 JpaBatchConfigurer를 확인할 수 있다.


BatchAutoConfiguration

 

JobLaucherApplicationRunner 클래스를 생성하는 것을 확인할 수 있다.

 

참조

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EB%B0%B0%EC%B9%98/lecture/91280?tab=note&speed=1

'Spring Batch' 카테고리의 다른 글

3 - Spring Batch Job 이란?  (0) 2021.11.05
2 - Spring Batch DB 스키마 살펴보기  (0) 2021.11.05

댓글