spring 3.0 부터 제공하는 스케줄러 / scheduler 사용 예제이다.

 

 

장점은 어노테이션 방식 ,간편함, db 접근이 용이하다.

 

 

 

사용 방법은 아래 소스를 참고한다.

 

Class

@Component
public class AnnotationScheduler {
 /** EgovSampleService */
    @Resource(name = "myBatisSampleService")
    private MyBatisSampleService myBatisSampleService;
 
// @Scheduled(cron="* * * * * *") // 크론 설정방법
 @Scheduled(fixedDelay=10000// 주기 : 1/1000초
 public void batchActionSystemOutPrintln() {
  System.out.println("Scheduler Test ===========================================");
  System.out.println("id : " + Thread.currentThread().getId());
  
  CmtBoardVO searchVO = new CmtBoardVO();
  try {
      // @Resource 를 이용한 service를 가지고 db 접근이 가능하다.
 
 
   }
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  
 }
 
}
 
cs

 

스프링 설정 xml

context-scheduler.xml

 

<!-- 어노테이션을 사용할 베이스패키지만 잘 바꿔주면 된다. -->
 
 <context:component-scan base-package="egovframework"></context:component-scan>
 
 <task:scheduler id="annotationSecheduler" pool-size="10"/>
 
<task:executor id="TaskExe" pool-size="10"/>
 <task:annotation-driven scheduler="annotationSecheduler" executor="TaskExe"/>
 
cs

 

 

 

도움이 되셨다면 공감을 부탁드립니다. ^^  

by 개발자 CofS 2016.01.05 15:55