본문 바로가기

Spring Batch3

3 - Spring Batch Job 이란? 기본 개념 배치 계층 구조에서 가장 상위에 있는 개념으로서 하나의 배치작업 자체를 의미 Job Configuration을 통해 생성되는 객체 단위로서 배치작업을 어떻게 구성하고 실행할 것인지 전체적으로 설정하고 명세해 놓은 객체 배치 Job을 구성하기 위한 최상위 인터페이스이며 스프링 배치가 기본 구현체를 제공한다. 여러 Step을 포함하고 있는 컨테이너로 반드시 한 개 이상의 Step으로 구성해야 함 기본 구현체 SimpleJob 순차적으로 Step을 실행시키는 Job FlowJob 특정한 조건과 흐름에 따라 Step을 구성하여 실행시키는 Job Flow 객체를 실행시켜서 작업을 한다. 쉽게 말해 Job은 하나의 배치 작업 단위이다. 그렇다면 Job은 어떻게 각각의 Step을 실행시키는가? 간단한 Jo.. 2021. 11. 5.
2 - Spring Batch DB 스키마 살펴보기 Job 관련 테이블 BATCH_JOB_INSTANCE Job이 실행될 때 JobInstance 정보가 저장되며 job_name과 job_key를 키로 하여 하나의 데이터 저장 동일한 job_name과 job_key로 중복 저장될 수 없다. JobInstance : Job 실행 단위 BATCH_JOB_EXECUTION Job의 실행정보가 저장되며 Job 생성, 시작 시간, 종료 시간, 실행 상태, 메세지 등을 관리 BATCH_JOB_EXECUTION_PARAMS Job과 함께 실행되는 JobParameter 정보를 저장 JobParameter : JobInstance를 구분하기 위한 객체 BATCH_JOB_EXECUTION_CONTEXT Job의 실행동안 여러가지 상태 정보, 공유 데이터를 직렬화(Json.. 2021. 11. 5.
1 - @EnableBatchProcessing @EnableBatchProcessing 총 4개의 설정 클래스를 실행시키며 스프링 배치의 모든 초기화 및 실행 구성이 이루어진다. 스프링 부트 배치의 자동 설정 클래스가 실행됨으로 빈으로 등록된 모든 Job을 검색해서 초기화와 동시에 Job을 수행하도록 구성됨. @EnableBatchProcessing 어노테이션에 의해 아래 번호 순서대로 실행된다. EnableBatchProcessing SimpleBatchConfiguration JobBuilderFactory와 StepBuilderFactory 생성 프록시 객체로 생성 -> Job, Step의 빈 생성 시점은 Job, Step이 실행되는 시점 BatchConfigurerConfiguration BasicBatchConfigurer : 프록시 객체의.. 2021. 11. 3.