본문 바로가기

프로그래밍/Spring

[Spring Batch] 2. 기본 세팅 해보기

1. 기본 세팅 해보기

 1) JOB 세팅하기

@Autowired
public JobBuilderFactory jobBuilderFactory;

/**
* Basic Job Configuration
*
* @return
*/
@Bean(name = BASIC_JOB_NM)
public Job basicJob() {
//@formatter:off
return jobBuilderFactory
.get(BASIC_JOB_NM)
.incrementer(new RunIdIncrementer())
.start(basicTaskletStep())
.build();
//@formatter:on
}

 2) STEP

(1) 기본 소스

@Autowired
public StepBuilderFactory stepBuilderFactory;

/**
* Basic Step Configuration
*
* @return
*/
@Bean(name = BASIC_STEP_NM)
public Step basicTaskletStep() {
//@formatter:off
return stepBuilderFactory
.get(BASIC_STEP_NM)
.tasklet((stepContribution, chunkContext) -> {
LOG.info("Tasklet Run!!");

return RepeatStatus.FINISHED;
})
.build();
//@formatter:on
}

(2) Tasklet

 - org.springframework.batch.core.step.tasklet.Tasklet 로 구현함.

 - 샘플소스

@Component
public class TaskletStep implements Tasklet {

@Override
public RepeatStatus execute(StepContribution contribution, ChunkContext chunkContext) throws Exception {

LOG.info("Tasklet Run!!");

return RepeatStatus.FINISHED;
}
}

- 위 소스를 간단하게 Step 내 소스처럼 변경 가능하다.


2. 실행해보기

 - java -jar로 실행해보기

java -jar path/batch_file_name.jar --spring.batch.job.names=BASIC_JOB


 - intellij 에서 실행해보기


3. 소스 확인하기

 - 바로가기