스프링 배치 3.0 이상 버전을 이용하므로 @EnableBatchProcessing이 필요하지 않다

기본 배치 어플리케이션

지난번에 만든 스프링배치 프로젝트 활용

lombok 설정

스크린샷 2024-10-14 오전 11.03.34.png

과정

Tasklet 구현체 생성

Tasklet → Step 내에서 구성되고 실행되는 도메인 객체, 단일 task를 수행하기 위해 사용된다.

import lombok.extern.slf4j.Slf4j;
import org.springframework.batch.core.StepContribution;
import org.springframework.batch.core.scope.context.ChunkContext;
import org.springframework.batch.core.step.tasklet.Tasklet;
import org.springframework.batch.repeat.RepeatStatus;
import org.springframework.beans.factory.InitializingBean;

@Slf4j
public class GreetingTasklet implements Tasklet, InitializingBean {

    @Override
    public RepeatStatus execute(StepContribution contribution,
                                ChunkContext chunkContext) throws Exception{
        log.info("======================Taks Execute======================");
        log.info("GreetingTask: {}, {}", contribution, chunkContext);
        
        return RepeatStatus.FINISHED;
    }
    
    @Override
    public void afterPropertiesSet() throws Exception{
        log.info("====================== After Properties Sets()=====================");
    }
}

@Configuration 을 통해서 생성할 배치 빈을 스프링에 등록하기

@Slf4j
@Configuration
public class BasicTaskJobConfiguration {
    
}