天天看点

Cron表达式使用介绍域讲解在Linux中的使用在spring中使用

Cron表达式使用

  • 介绍
  • 域讲解
    • cron相关符号和使用
  • 在Linux中的使用
  • 在spring中使用

计划任务,是任务在约定的时间执行已经计划好的工作,这是表面的意思。在Linux中,我们经常用到 cron 服务器来完成这项工作。cron服务器可以根据配置文件约定的时间来执行特定的任务。

介绍

一个cron表达式是由6~7个域组成的,并且已空格分隔的字符串。cron原来是在unix中的工具之一。主要用于定时调度任务使用。cron核心使用就是cron表达式来处理任务调度。

域讲解

一个完整的cron表达式总共有7个域,从左到右表示秒、分、小时、月份中的日期、月份、星期中的日期 、年份

其中年份项为可选项,不一定要有,所以一般设置定时任务不会写年份,这样就是6位。

cron相关符号和使用

  • ﹡:允许该域使用全部的值
  • ?:只允许出现在第4个域(月份中的日期)和第6个域(星期中的日期),表示不考虑该域的取值,由于两个域中的数据可能存在冲突
  • -:该符号标识范围
  • ,:该符号表示一个域内并列的多个值
  • /:该符号设置步长
  • L:表示最后
  • W:表示周1到周5,该符号只能出现在第4个域中并且只能与其他值组合使用
  • #:该符号只能出现在第6个域中(星期中的日期),表示该月的第几天

在Linux中的使用

在linux中使用crontab命令进行操作cron,代码如下:

Cron表达式使用介绍域讲解在Linux中的使用在spring中使用

查看设置的定时任务

crontab -l
           
Cron表达式使用介绍域讲解在Linux中的使用在spring中使用

可以使用man帮助文档进行学习crontab命令。

在spring中使用

在平时开发中,需要写定时任务,我们可以使用spring的@Scheduled注解,设置一个cron的值进行设置。

@Scheduled(cron="10 * * * * ?")
public void scheduledTask(){
	/****do somethings***/
}
           

继续阅读