전체 글

전체 글

    6.Flow

    개요Flow는 이전 수업에서 배웠던 개념들이 Job과 Step보다 좀 더 유연하다.이번 단원에서 FlowJob, SimpleFlow, FlowStep에 대하여 학습해보자FlowJob 개념 및 API 소개1. 기본개념Step 을 순차적으로만 구성하는 것이 아닌 특정한 상태에 따라 흐름을 전환하도록 구성할 수 있으며 FlowJobBuilder 에 의해 생성된다Step 이 실패 하더라도 Job 은 실패로 끝나지 않도록 해야 하는 경우한 Job에서 연속적인 Step이 있을Step 이 성공 했을 때 다음에 실행해야 할 Step 을 구분해서 실행 해야 하는경우특정 Step은 전혀 실행되지 않게 구성 해야 하는 경우Flow 와 Job 의 흐름을 구성하는데만 관여하고 실제 비즈니스 로직은 Step 에서 이루어진다내부적..

    5.Step

    StepBuilderFactory1. StepBuilderFactoryStepBuilder 를 생성하는 팩토리 클래스로서 get(String name) 메서드 제공StepBuilderFactory.get(“stepName")“stepName” 으로 Step 을 생성2. StepBuilderStep을 구성하는 설정 조건에 따라 다섯 개의 하위 빌더 클래스를 생성하고 실제 Step 생성을 위임한다TaskletStepBuilderTaskletStep 을 생성하는 기본 빌더 클래스SimpleStepBuilderTaskletStep 을 생성하며 내부적으로 청크기반의 작업을 처리하는 ChunkOrientedTasklet 클래스를 생성한다PartitionStepBuilderPartitionStep 을 생성하며 멀티 ..

    4.스프링 배치 실행-Job

    목차배치 초기화 설정Job and StepJob and Flow@JobScope / @StepScope배치 초기화 설정이번 글에서는 Bean으로 등록된 Job들을 어떻게 실행할 지에 대해서 배운다.Job을 하나만 실행하는 경우도 있을것이고 2개..n개를 돌리는 경우도 있을것이다.이러한 설정을 application.properties or application.yml 파일에 설정해서 동작시켜보고 어떻게 돌아가는지 원리를 분석해보자.1.JobLauncherApplicationRunnerJobLauncherApplicationRunner는 Spring Batch 작업을 시작하는 ApplicationRunner 로서 BatchAutoConfiguration 에서 생성됨스프링 부트에서 제공하는 Applicatio..