09.07 Spring Scheduled

Spring @Scheduled是Spring計劃任務的一種很簡潔的實現。用來替代Quartz的方案。

要使用此特性,需要Spring3.2以上版本。用法:

1、在xml的配置中,需要加入:

http://www.springframework.org/schema/task

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

2、寫一個簡單例子:

import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* Created by leizhimin on 2014/8/16.
*
* @author leizhimin 2014/8/16 17:46
*/
@Component
@Lazy(false)
public class TestJob {
public static SimpleDateFormat sdf_yyyyMMddHHmmss = new SimpleDateFormat("yyyyMMddHHmmss");
@Scheduled(cron = "0/5 * * * * ?")
public void exejob() {
System.out.println(sdf_yyyyMMddHHmmss.format(new Date()) + " :執行中。。。");
}
}

每隔5秒中就會輸出一條信息。

------------------------------------

還可以在一個類上寫多個任務:

@Component
@Lazy(false)
public class TestJob {
public static SimpleDateFormat sdf_yyyyMMddHHmmss = new SimpleDateFormat("yyyyMMddHHmmss");
@Scheduled(cron = "0/5 * * * * ?")

public void exejob1() {
System.out.println(sdf_yyyyMMddHHmmss.format(new Date()) + " :AAAA 執行中。。。");
}
@Scheduled(cron = "0/5 * * * * ?")
public void exejob2() {
System.out.println(sdf_yyyyMMddHHmmss.format(new Date()) + " :BBBB 執行中。。。");
}
@Scheduled(cron = "0/5 * * * * ?")
public void exejob3() {
System.out.println(sdf_yyyyMMddHHmmss.format(new Date()) + " :CCCC 執行中。。。");
}
}
20141010225850 :AAAA 執行中。。。
20141010225850 :BBBB 執行中。。。
20141010225850 :CCCC 執行中。。。
20141010225855 :AAAA 執行中。。。
20141010225855 :BBBB 執行中。。。
20141010225855 :CCCC 執行中。。。
20141010225900 :AAAA 執行中。。。
20141010225900 :BBBB 執行中。。。
20141010225900 :CCCC 執行中。。。
20141010225905 :AAAA 執行中。。。
20141010225905 :BBBB 執行中。。。
20141010225905 :CCCC 執行中。。。
20141010225910 :AAAA 執行中。。。
20141010225910 :BBBB 執行中。。。
20141010225910 :CCCC 執行中。。。
20141010225915 :AAAA 執行中。。。
20141010225915 :BBBB 執行中。。。
20141010225915 :CCCC 執行中。。。
20141010225920 :AAAA 執行中。。。
20141010225920 :BBBB 執行中。。。
20141010225920 :CCCC 執行中。。。
20141010225925 :AAAA 執行中。。。

20141010225925 :BBBB 執行中。。。
20141010225925 :CCCC 執行中。。。
20141010225930 :AAAA 執行中。。。
20141010225930 :BBBB 執行中。。。
20141010225930 :CCCC 執行中。。。
20141010225935 :AAAA 執行中。。。


分享到:


相關文章: