본문 바로가기

웹 개발(OLD)/Spring Framework(OLD)

Spring Batch 프로그램 - 어노테이션 방식

1. servlet-context.xml 에 <task:annotation-driven> 추가( 어노테이션으로 태스크를 적용해서 스프링이 관리하라는 의미.)




2. 스프링이 관리하고 있는 클래스(아래는 @Service 어노테이션이 적용된 클래스의 메소드이다.)안의 태스크로 적용할 메소드에 @Scheduled 어노테이션을 추가한다. 

그러면 태스크로 등록된 것이다.( 이 메소드가 주기적으로 실행 되는 것이다.)


@Scheduled 어노테이션의 속성

- cron = "초 분 시 월 년 요일"      :    cron = "1 * * * * ?" 하면 매 1초가 될 때마다 실행한다는 의미.


- fixedDelay = 3                        :    태스크 실행 후에 지정한 31초 동안 대기하고, 다시 태스크를 호출한다.                              

- fixedRate = 3                          :    3초마다 태스크 호출.



3. 결과 

현재 위 메소드는 매 1초가 될 때마다 수행되도록 되어있다. 그런데 메소드의 실행시간이 약 9초가 소요되기 때문에 실제로는 9~10초에 수행이 완료 되는 것을 확인할 수 있다. (물론 메소드 시작하자마자 현재시간을 출력했다면 매 1초가 될 때마다 콘솔에 찍혔을 것이다.)



'웹 개발(OLD) > Spring Framework(OLD)' 카테고리의 다른 글

jqGrid  (0) 2016.06.18
JAVA Object, JSON 변환 (GSON 라이브러리)  (0) 2016.05.19
Spring AOP  (0) 2016.04.15
Spring Transaction 처리  (0) 2016.04.15
Spring MVC 원리  (6) 2016.04.11