본문 바로가기
Study/Spring

Spring task Scheduler Cron Expression 크론 표현식

by 오늘만 사는 여자 2020. 11. 16.
728x90
반응형

Cron Expression


크론 표현식에느 6~7자리가 사용된다.

cron = "* * * * * *"

 

*    *      *      *      *      *      *

초  분    시     일    월   요일   년도(생략 가능)

 

이라고 생각하면 된다.

여기서 요일은 1-7, SUN-SAT로 표현 가능 하다( 1: 일, 2 : 월, 3 : 화, 4 : 수, 5 : 목, 6 : 금, 7 : 토)

 

위에서 *(아스타)는 ALL(모든) 것을 의미한다.

 

이 외에도

? :  특정값이 없을 때 (어떤 값이든 상관 없도) 날짜와 요일에만 사용 가능

-(하이픈) : 범위 값을 지정할 때

,(콤마) : 여러 값을 지정할 때

/(슬래시) : 초기값과 증가치 설정할 때

L : 지정할 수 있는 범위의 마지막 값 설정할 때 날짜와 요일에만 사용 가능

W : 월 ~ 금요일 또는 가장 가까운 월, 금요일을 설정 할 때 

# : 몇 번째 특정요일을 설정할 때 

 

그럼 위와 같은 기본적인 지식을 갖고 자주 사용되는 크론 표현식의 예를 살펴보자.

 

<!-- 5분 마다 실행 ex) 00:05, 00:10. 00:15.... -->

cron = "0 0/5 * * * *"

<!-- 1시간 마다 실행 ex) 01:00, 02:00, 03:00.... -->

cron = "0 0 0/1 * * *"

<!-- 매일 오후 18시마다 실행 ex) 18:00 -->

cron = "0 0 18 * * *"

<!-- 2018년도만 매일 오후 18시마다 실행 ex) 18:00 -->

cron = "0 0 18 * * * 2018"

<!-- 매일 오후 18시00분-18시55분 사이에 5분 간격으로 실행 ex) 18:00, 18:05.....18:55 -->

cron = "0 0/5 18 * * *"

<!-- 매일 오후 9시00분-9시55분, 18시00분-18시55분 사이에 5분 간격으로 실행  -->

cron = "0 0/5 9,18 * * *"

<!-- 매일 오후 9시00분-18시55분 사이에 5분 간격으로 실행  -->

cron = "0 0/5 9-18 * * *"

<!-- 매달 1일 00시에 실행 -->

cron = "0 0 0 1 * *"

<!-- 매년 3월내 월-금요일 10시 30분에만 실행 -->

cron = "0 30 10 ? 3 MON-FRI"

<!-- 매월 마지막날 저녁 10시에 실행 -->

cron = "0 0 10 L * ?"

 

 

 



 참고 : https://aljjabaegi.tistory.com/400 [알짜배기 프로그래머]

728x90
반응형

댓글