강의메모 #
스프링 배치 도메인 이해 - STEP #
기본 개념 #
- Batch job을 구성하는 독립적인 하나의 단계로서 실제 배치 처리를 정의하고 컨트롤하는 데 필요한 모든 정보를 가지고 있는 도메인 객체
- 단순한 단일 태스크 뿐 아니라 입력과 처리 그리고 출력과 관련된 복잡한 비즈니스 로직을 포함하는 모든 설정들을 담고 있다.
- 배치작업을 어떻게 구성하고 실행할 것인지 Job 의 세부 작업을 Task 기반으로 설정하고 명세해 놓은 객체
- 모든 Job은 하나 이상의 step으로 구성됨
기본 구현체 #
- TaskletStep
- 가장 기본이 되는 클래스로서 Tasklet 타입의 구현체들을 제어한다
- PartitionStep
- 멀티 스레드 방식으로 Step 을 여러 개로 분리해서 실행한다
- JobStep
- Step 내에서 Job 을 실행하도록 한다
- FlowStep
- Step 내에서 Flow 를 실행하도록 한다
Step #
- API 를 설정할 때 Tasklet 과 Chunk 기반 클래스를 동시에 설정할 수 없다
API 설정에 따른 각 Step 생성 예제 #
TaskletStep #
- 직접 생성한 Tasklet 실행
TaskletStep #
- ChunkOrientedTasklet 을 실행
JobStep #
- Step 에서 Job 을 실행
FlowStep #
- Step 에서 Flow 를 실행