공부/Spring
Spring Job Scheduler
오피스엑소더스
2019. 12. 19. 10:55
참고 : https://gs.saro.me/dev?tn=548
1. 용어
1.1. 잡 스케줄러 : 특정 시간/주기에 반복적/일시적 작업들을 실행시켜 주는 주체
1.2. 배치(Batch) : 일괄처리로 대량의 작업을 수행하는 것
1.3. 잡(Job) : 스케줄링 될 배치(작업)
1.4. 크론 표현식 : 스케줄러 계열의 표현식
- ("초 분 시 일 월 요일 연도")
- ("0-59 0-59 0-23 1-31/? 1-12 0-6/? 생략가능")
> ? : 설정값 없음(일, 요일 에서만 사용 가능)
- 매 년 11월 20일로 설정하는 경우 요일을 설정하지 않기 위한 용도 등
> L : 마지막 값(일, 요일 에서만 사용 가능)
2. 스프링 스케줄러
2.1. 가이드 : https://spring.io/guides/gs/scheduling-tasks/
2.2. 간단예제
- 설정 생략
@Component
public class teamDeleteBatch {
@Autowired
private TeamManager teamManager;
//cron 표현식 활용
@Scheduled(cron = "${teamDeleteBatch.cron}")
public void execute() {
teamManager.deleteOldTeam();
}
}