출처
목차
Tasklet
Tasklet 은 Step 에서 실행되는 작업의 단위 중 하나
Tasklet 은 Step 내에서 실행되는 작업의 단위 중 하나며 보통 단일 작업을 수행하는데 사용합니다. TaskletStep 객체에 의해 반복적으로 수행되며 Tasklet 반환값에 따라 계속 수행하거나 종료합니다.
RepeatStatus
: Taasklet 의 반복여부 상태 값
RepeatStatus.FINISHED
: Tasklet 종료, RepeatStatus 를 null 로 반환하면 RepeatStatus.FINISHED 로 해석된다.
RepeatStatus.CONTINUABLE
: Tasklet 반복
Tasklet 인터페이스
public interface Tasklet {
@Nullable RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception; }
|
@Component public class CustomTasklet implements Tasklet {
@Override public RepeatStatus execute(StepContribution stepContribution, ChunkContext chunkContext) throws Exception {
System.out.println("stepContribution = " + stepContribution + ", chunkContext = " + chunkContext);
return RepeatStatus.FINISHED; } }
|
@Bean public Step step1() { return stepBuilderFactory.get("step1") .tasklet(new Tasklet() { @Override public RepeatStatus execute(StepContribution stepContribution, ChunkContext chunkContext) throws Exception { System.out.println("stepContribution = " + stepContribution + ", chunkContext = " + chunkContext); return RepeatStatus.FINISHED; } }) .build(); }
@Bean public Step step2() { return stepBuilderFactory.get("step2") .tasklet(customTasklet) .build(); }
|