일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Web Server
- jsp
- ubuntu
- AWS
- Git
- php
- Spring
- Design Patterns
- ReactJS
- Spring Batch
- Gradle
- java
- Spring Boot
- JVM
- linux
- laravel
- MySQL
- springboot
- jenkins
- it
- Oracle
- 요리
- javascript
- IntelliJ
- elasticsearch
- 맛집
- tool
- devops
- redis
- db
Archives
- Today
- Total
아무거나
[Spring Boot] 스케줄링 구현 본문
반응형
스케줄링
- Scheduler
- Spring Boot에서 @EnableScheduling, @Scheduled를 사용한 스케줄링 구현
-
메인 메소드가 있는 애플리케이션 구동 클래스인 Application.java에 @EnableScheduling 설정 및 @Bean 추가
.... import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication @EnableScheduling public class Application { public static void main(String[] args) { ApplicationContext ctx = SpringApplication.run(Application.class, args); } @Bean public TaskScheduler taskScheduler() { // 단일 스레드 구현 return new ConcurrentTaskScheduler(); } }
-
스케줄링을 적용시킬 클래스를 생성하고 메소드를 추가
.... import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component public class CronExample { // 매일 3시 20분 0초에 실행 @Scheduled(cron = "0 20 3 * * *") public void exampleJob1() { // 실행할 로직1 } // 매월 3일 0시 0분 0초에 실행 @Scheduled(cron = "0 0 0 3 * *") public void exampleJob2() { // 실행할 로직2 } // 3초마다 실행 @Scheduled(fixedRate = 3000) public void exampleJob3() { // 실행할 로직3 } // 애플리케이션 시작 후 30초 후에 첫 실행, 그 후 매 10초마다 주기적으로 실행 @Scheduled(initialDelay = 30000, fixedDelay = 10000) public void exampleJob4() { // 실행할 로직4 } }
-
- Spring Boot에서 @EnableScheduling, @Scheduled를 사용한 스케줄링 구현
반응형
'Java & Kotlin > Spring' 카테고리의 다른 글
[SpringBoot] 간단한 Interceptor 구현 (0) | 2019.01.16 |
---|---|
[Spring Boot] @ComponentScan 이란 (0) | 2019.01.16 |
[Spring Boot] Spring Boot에서 Tomcat연동 설정 (0) | 2019.01.07 |
[Spring Boot] logback을 이용한 sql log 콘솔에 출력 (0) | 2018.12.27 |
[Spring Boot] 간단한 테스트 코드 작성 (0) | 2018.12.06 |
Comments