이번에는 @Scheduled 사용하는 방법에 대해 알아보겠습니다.
1. 코드 사용법
@Scheduled을 사용하고 cron 식을 추가해준다.
public class SchedulerService {
// 초 분 시 일 월 요일
@Scheduled(cron="* * * * * *")
public void scheduling() {
// 실행할 코드 추가
}
}
2. cron식 표현법
아래의 표는 cron식에 작성할 수 있는 범위입니다.
초 | 분 | 시 | 일 | 월 | 요일 | |
범위 | 0~59 | 0~59 | 0~23 | 1~31 | 1~12 | 0~6 |
cron식에서 자주 사용하는 특수문자 표현입니다.
특수문자 | 표현 |
* | 모든 값을 의미합니다. |
/ | 증가치를 나타낼때 (ex) 0/1 |
? | 날짜와 요일에 사용 가능 |
- | 범위를 지정할 때 |
, | 여러 값을 지정할 때 |
L | 지정할 수 있는 범위의 마지막 값 표시 |
W | 가장 가까운 평일(weekday)을 설정할 때 |
# | N번 째 특정 요일을 설정할 때 |
예시
1. 5분 마다
cron = "0 0/5 * * * *"
2. 1시간 마다
cron = "0 0 0/1 * * *"
3. 어떤 요일이든 매월 마지막날 12시에 실행
cron = "0 0 12 L * ?"
4. 매달 1일 0시에 실행
cron = "0 0 0 1 * *"
5. 매일 9시에서 18시 사이에 5분간격으로 실행
cron = "0 0/5 9-18 * * ?"
참고
'JAVA' 카테고리의 다른 글
[JAVA] json <-> Object로 바꾸기 (0) | 2023.02.24 |
---|---|
[JAVA] @NotNull, @NotEmpty, @NotBlank (0) | 2023.02.22 |
[JAVA] Springboot file upload 구현 (0) | 2023.02.10 |
[JAVA] 문자열 자르기 (0) | 2023.02.06 |
[JAVA] 날짜 계산 및 비교하기 (0) | 2023.02.05 |