SPRING/스프링배치

JobParameter

노트코드 2022. 7. 3. 23:54
  • Job을 실행할때 함께 포함되어 사용하는 파라미터를 가진 도메인 객체
  • 하나의 Job에 존재할 수 있는 여러개의 JobInstance를 구분하기 위한 용도
  • JobParameters와 JobInstance는 1:1 관계

 

JobParameter의 특징

  • JobParameters는 LinkedHashMap<String,JobParameter> 타입의 파라미터들을 갖는다.
  • JobParameter는 4개의 타입을 지원함,  ParameterType = (String, Date, Long, Double)

 

실행 방법 1) 직접 JobParameterBuilder를 통한 주입방식

<데이터베이스에 저장되는 값 예시>

 

JobParameters를 사용하는 방법

1) task의 StepContribution

2) StepContribution -> StepExecution

3)  StepExecution의 JobExecution

4)  JobExecution의 JobParameters에 접근해서 사용 가능

 

또는 ChunkContext에서도 꺼내서 사용가능하다

 

사용법 예시

디버그 걸고 확인하면 아래와 같이 확인이 가능하다

 

 

실행방법2) 외부 콘솔에서 입력하는 방식

주의 *타입을 (long)과 같이 타이핑 해주지 않으면 타입 에러가 발생함*

실행방법3) 스프링 부트 프로그램 아규먼트값으로 넣어주기

 

참고)

bash: syntax error near unexpected token `(' 에러 발생시

 

GIT bash에서 에러날시 아래와 같이 하면 에러가 안난다