SpringTask(Spring定时任务注解方式)

1.Spring配置文件

xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-3.0.xsd"






2.任务类

@Component("autoSpider")
public class AutoSpider {
    //每5秒执行一次
    //cron表达式
    @Scheduled(cron = "0/5 * * * * ?")
    public void say(){
        System.out.println("autoSpider start");
        System.out.println("---------running------------");
        System.out.println("autoSpider end");
    }
}

3.cron表达式说明

cron表达式通常用于配置计划任务的触发时间。一个cron表达式是一个由六个或者七个子表达式(字段)组成的字符串。而子表达式或者称为字段之间用空格隔开。

字段 是否必须 允许的值 允许的特殊字符
秒(seconds) Y 0-59 , - * /
分(minutes) Y 0-59 , - * /
时(hours) Y 0-23 , - * /
天(day of month) Y 1-31 , - * /L W C
月(month) Y 0-11 或者 JAN-DEC , - * /
星期(day of week) Y 1-7 或者 SUN-SAT , - * /?L C#
年(year) N 1970-2099或者不写 , - * /
3.1特殊字符说明
  • “,”表示and
  • “-”表示一个区间段,即开始到结束
  • “*”表示全选,即用汉语中的“每”或者英文中的every/each/per
  • “/”表示一个区间段的时长,例如放在第一位“/10”则表示每10秒
  • “L”表示最后,即Last
  • “W”表示weekday,即工作日也就是周一到周五
  • “C”表示canlendar,即日历,例如“1C”在星期位上就是包括日历上的星期日
  • “#”表示序列,如“#2”表示第二
3.2例子
表达式 表达的时间
0 0 12 * * ? 每天中午12点
0 15 10 ? * * 每天早上10点15分
0 15 10 * * ? 每天早上10点15分
0 15 10 * * ? * 每天早上10点15分
0 15 10 * * ? 2005 2005年的每天早上10点15分
0 * 14 * * ? 每天下午14点钟开始到14点59分结束这么一个时间段
0 0/5 14 * * ? 每天下午14点到14点55分之间每5分钟触发一次
0 0/5 14,18 * * ? 每天下午14点到14点55分 和18点到18点55分之间 每5分钟触发一次
0 0-5 14 * * ? 每天下午14点开始到14点05结束
0 10,44 14 ? 3 WED 每年三月份的每个周三下午14点10分和14点44各一次
0 15 10 ? * MON-FRI 每个工作日的10点15分
0 15 10 15 * ? 每个月15号的上午10点15分
0 15 10 L * ? 每个月最后一天的10点15分
0 15 10 ? * 6L 每个月最后一个周五的10点15分
0 15 10 ? * 6L 2002-2005 2002年到2005年每个月最后一个周五的10点15分
0 15 10 ? * 6#3 每个月的第三个周五的10点15分
0 0 12 1/5 * ? 每个月从第一天开始每隔5天中午12点触发一次
0 11 11 11 11 ? 每年11月11号11点11分

你可能感兴趣的:(SpringTask(Spring定时任务注解方式))