반응형

스프링 특정 시간에 컨트롤러 함수 호출하는 방법

스케쥴 기능은 여러가지가 있는데 이방법은 @Scheduled 어노테이션을 사용하는 방법으로 비교적 간단하다.

 

1. Dispatcher-Servlet.xml 파일에 항목 추가(환경에 따라 servlet-contexxt.xml 등 맞게 수정한다)

   <beans:beans

      ...

      xmlns:task="http://www.www.springframework.org/schema/task"

      ...

      xsi:schemaLocation= ...

       ...

        http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.0.xsd

       ...>

 

<annotation-driven />

<task:annotation-driven />

 

2. 특정 시간에 호출하려는 메서드 상단에 어노테이션을 추가한다. (아래는 매일 오후 2시 15분에 호출하도록 되어 있다.)

   @Scheduled(cron="0 15 14 * * ?")

   public void test() {

      ...

   }

서버가 동작중일 때 해당 시간에 메서드가 호출되는 것을 확인할 수 있다.

 

[출처 및 cron 시간에 대한 자세한 사항은 아래 사이트 참고할 것]

huskdoll.tistory.com/819

 

[Spring] @Scheduled 정해진 시간에 맞춰서 모듈 실행하기

Linux에서 cron 을 사용하는것 처럼 웹서비스에서도 정해진 시간에 무언가를 실행해야 하는 경우가 종종 있습니다. 자바에도 그런 기능을 제공해주고 있고, Spring에서는 손쉽게 사용할 수가 있습

huskdoll.tistory.com

 

 

반응형

+ Recent posts