스프링에서 @Scheduled 어노테이션을 이용해 일정 시간마다 프로그램을 돌리는 방법이다
요약 main에 @EnableScheduling 추가 -> 스케쥴러에 @Scheduled(크론식) 추가 =끝=
아래는 설명이다
1. 일단 main 쪽에서 Schedule을 사용 가능하게 만들어줘야된다
@EnableScheduling을 추가해주자
2. 하위 패키지에 스케쥴러를 작성해준다.
여기서는 CustomerScheduler.java를 새로 만들어서 관리했지만 그냥 다를 컨트롤러 안에 넣어도 작동 하긴 할거 같다. 위 사진 처럼 하면 5초마다 scheduller()를 돌면서 로그를 출력해준다.
++스프링 크로식은 필드가 6개여야한다 일반 크론식을 사용하면 에러가 나니 삽질하지 말자!
크론 설명
(초 분 시 일 월 년) < 각 필드별 값
0 0 0 1/1 * * >> 0초 0분 0시 1/1일(하루마다) *(모든월) *(모든년) ==>>매일 0시0분0초
0/5 * * * * * >> 5초마다 *분 *시 *일 *년 =>5초마다
5 * * * * * >> *년 *월 *일 *시 *분 5초 일때 ==> ex) 1분 05초 2분 05초...
(대강 이런 느낌이다 쉬우니 다들 알거라 생각한다 이해 안되면 크론 설명은 다른곳을 참고하자 설명하기 힘드넹)
아래 사이트는 크론 생성 사이트다 만져보면 감이 올거다
CronMaker
www.cronmaker.com
+ 참고) 이거는 bean 사용한거 같다 다른 방법이라서 나는 자세히 안봤다.
@Schedule Spring 스프링 스케쥴 설정법 & CronTab
******************************************************************************************************** 스프링 MVC 에서 일정 시간 주기적으로 작업하는 스케쥴러를 만들어 본다. 일단 root-context.xml을..
kanetami.tistory.com
+참고 사이트 https://jeong-pro.tistory.com/186
@Scheduled 사용법, 스케줄러 커스터마이징을 통한 제어(+스케줄러에 등록한 작업 중지하는 방법, 배치 효과, 정확한 주기 작업 사용법)
@Scheduled 사용법 주기적인 작업이 있을 때 @Scheduled 애노테이션을 사용하면 쉽게 적용할 수 있다. ex) linux의 crontab 1. @EnableScheduling Annotation을 적어서 스케줄링을 사용한다는 것을 알린다. @Enab..
jeong-pro.tistory.com
'Java > Spring' 카테고리의 다른 글
@JSONSETTER 이용 중 삽질 (0) | 2023.03.13 |
---|---|
[JPA] @Query update문 (Not supported for DML operations 해결) update retyrn 받는법 (0) | 2022.09.28 |
yaml & * (0) | 2021.10.07 |
spring 2로 바꾸면서 Spring security로 인한 로그인창 없애고 custom 로그인 창으로 대체하기 (0) | 2020.10.22 |