728x90
☺️ 요약 설명
사용 방법 : @Scheduled(cron = "* * * * * *")
사용 방법 : @Scheduled(cron = "* * * * * *")
위의 사용 방법에서 *(Asterisk (아스테리스크))는 ALL(모든) 것을 의미 합니다.
* 부분에 들어갈 설정 값들에 대해서 설명 드리도록 하겠습니다.
0 | 1 | 2 | 3 | 4 | 5 | 6 |
* | * | * | * | * | * | * |
초 | 분 | 시 | 일 | 월 | 요일 | 년(생략 가능) |
0~59 | 0~59 | 0~23 | 1~31 | 1~12 JAN-DEC |
1-7 MON-SUN |
📅 월 표현 방법
1월 | 2월 | 3월 | 4월 | 5월 | 6월 | 7월 | 8월 | 9월 | 10월 | 11월 | 12월 |
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
JAN | FEB | MAR | APR | MAY | JUN | JUL | AUG | SEP | OCT | NOV | DEC |
📅 요일 표현 방법
월 | 화 | 수 | 목 | 금 | 토 | 일 |
1 | 2 | 3 | 4 | 5 | 6 | 7 |
MON | TUE | WED | THU | FRI | SAT | SUN |
⚡ 특수기호 설명
특수기호 | 읽는 법 | 설명 |
? | 물음표 | 특정값이 없을 때(어떤값이든 상관X), 날짜와 요일에만 사용가능 |
- | Hyphen (하이픈) | 범위값을 지정할 때 |
, | Comma (콤마) | 여러 값을 지정할 때 |
/ | Slash (슬래시) | 초기값과 증가치 설정할 때 |
L | 대문자 L(엘) | 지정할 수 있는 범위의 마지막 값 설정할 때, 날짜와 요일에만 사용가능 |
W | 대문자 W(더블유) | 월~금요일 또는 가장 가까운 월,금요일을 설정할 때 |
# | Crosshatch (크로스해치), 샵 | 몇번째 특정요일을 설정할 때 |
위의 표에서 알려드린 내용으로 자주 사용되는 크론 표현식의 예시 표를 보시고 이해에 도움이 되셨으면 합니다.
⚡ 실행 간격 별 계획 및 표기식
실행 간격 | 실행 계획 | 표기식 |
5분 | 00:05 -> 00:10 -> 00:15 ... | cron = "0 0/5 * * * *" |
1시간 | 01:00 -> 02:00 -> 03:00 | cron = "0 0 0/1 * * *" |
매일 오후 5시 | 17:00 | cron = "0 0 17 * * *" |
2022년 매일 오후 5시 | 17:00 | cron = "0 0 17 * * * 2022" |
매일 오후 5시-오후 5시 55분 까지 5분 간격 |
17:00 -> 17:05 ... -> 17:55 | cron = "0 0/5 17 * * *" |
매일 오후 9시-오후 10 10분 간격 |
21:00 -> 21:10 ... -> 10:50 | cron = "0 0/10 21,22 * * *" |
영업시간(오전 9시 ~ 오후 6시) 정시 간격 | 09:00 -> 10:00 ... -> 18:00 | cron = "0 0 9-18 * * *" |
매달 1일 자정(0시) | 00:00 | cron = "0 0 0 1 * *" |
매년 3월 월-금 09시 실행 | 09:00 | cron = "0 0 9 ? 3 MON-FRI" |
매월 마지막날 저녁 10시에 실행 | 22:00 | cron = "0 0 10 L * ?" |
728x90
'BACK-END > Spring' 카테고리의 다른 글
Spring Batch 기본 구조 (0) | 2023.04.10 |
---|---|
Spring Batch 시작하기 (0) | 2023.02.19 |
REST API 디자인 가이드 (1) | 2022.10.27 |
[Spring Boot] Failed to determine a suitable driver class 에러 (0) | 2021.12.14 |