스프링에서 간편하게 프레임워크안에서 스케쥴링 하던 quartz 를
annotation 으로 더 간단하게 설정 할 수 있게 되었다.
방법은
1. applicationContext.xml 같은 bean 을 설정하는 곳에서
아래의 굵은 부분과 같이 설정 해 준다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd">
<context:component-scan base-package="com.incross"/>
<!-- ************* schedule demon********************** -->
2. 스케쥴링을 할 메소드위에 @Scheduled 어노테이션을 설정해준다.
- @Scheduled(cron=" ~~~~") => 크론탭과 같은 설정 방법
- @Scheduled(fixedDelay=1000) => 몇 초 마다 실행할지 주기 정하기
1/1000 초
@Service
public class C2dmJobDemon {
@Autowired
public C2dmService c2dmService;
private static final Logger logger = Logger.getLogger(C2dmJobDemon.class);
@Scheduled(cron="1,2,3,4,5 * * * * ?")
//@Scheduled(fixedDelay=1000)
public void doC2dmSchedulerDemon() throws Exception {
String USER_ID = "shonm";
UserDTO dto = (UserDTO) c2dmService.UserServiceTest(USER_ID);
System.out.println("scheduler test :::::"+dto.getUSER_ID());
}
}
annotation 으로 더 간단하게 설정 할 수 있게 되었다.
방법은
1. applicationContext.xml 같은 bean 을 설정하는 곳에서
아래의 굵은 부분과 같이 설정 해 준다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd">
<context:component-scan base-package="com.incross"/>
<!-- ************* schedule demon********************** -->
<task:annotation-driven/>
<!-- ************************************************** -->
</beans>
=============================================================</beans>
2. 스케쥴링을 할 메소드위에 @Scheduled 어노테이션을 설정해준다.
- @Scheduled(cron=" ~~~~") => 크론탭과 같은 설정 방법
- @Scheduled(fixedDelay=1000) => 몇 초 마다 실행할지 주기 정하기
1/1000 초
@Service
public class C2dmJobDemon {
@Autowired
public C2dmService c2dmService;
private static final Logger logger = Logger.getLogger(C2dmJobDemon.class);
@Scheduled(cron="1,2,3,4,5 * * * * ?")
//@Scheduled(fixedDelay=1000)
public void doC2dmSchedulerDemon() throws Exception {
String USER_ID = "shonm";
UserDTO dto = (UserDTO) c2dmService.UserServiceTest(USER_ID);
System.out.println("scheduler test :::::"+dto.getUSER_ID());
}
}
댓글