본문 바로가기
Spring

Spring schedule

by 자바초보자 2015. 10. 7.
728x90

Spring schedule

Spring Scheduling 서비스는 어플리케이션 서버 내에서 주기적으로 발생하거나 반복적으로 발생하는 작업을 지원하는 기능으로서
유닉스의 크론(Cron) 명령어와 유사한 기능을 제공한다.
@Scheduled 어노테이션과 옵션을 사용하여 간단하게 Scheduling 서비스를 구현할 수 있다.
Scheduler
@Scheduled 어노테이션에서 사용가능한 Value는 3가지(cron, fixedDelay, fixedRate)가 있다.
cron은 CronTab에서의 설정과 같이 cron="0/10 * * * * ?" 과 같은 설정이 가능하고
fixedDelay은 이전에 실행된 Task의 종료시간으로 부터 정의된 시간만큼 지난 후 Task를 실행한다.(밀리세컨드 단위)
fixedRate은 이전에 실행된 Task의 시작시간으로 부터 정의된 시간만큼 지난 후 Task를 실행한다.(밀리세컨드 단위)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package
jwork.eam.service.impl;
import
java.lang.annotation.Annotation;
import
java.lang.reflect.Method;
import
org.springframework.scheduling.annotation.Scheduled;
import
org.springframework.stereotype.Service;
@Service
public
class
TaskTestServiceImpl {
@Scheduled
(fixedDelay=
1000
)
public
void
TestScheduler(){
System.out.println(
"Execute scheduling..."
);
}
}
context-task.xml
스프링 스케쥴러를 사용할 수 있도록 설정한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
beans
xmlns
=
xmlns:xsi
=
xmlns:task
=
xsi:schemaLocation="
">
<
task:annotation-driven
/>
</
beans
>
728x90

'Spring' 카테고리의 다른 글

[Spring] AOP를 이용한 속도 측정  (0) 2015.10.07
spring bean 객체 얻어오기  (0) 2015.10.07
Spring 다국어 변경  (0) 2015.10.07
Spring ExceptionResolver  (0) 2015.10.07
[Spring] UrlBasedViewResolver 다중 설정  (0) 2015.10.07