引言
项目中多多少少可能大概会用到一些定时任务的应用,而Spring也提供了定时任务的实现,在这里,主要说明定时器的使用,以注解的方式实现定时器
- 1、首先在Spring的配置文件里加上
xmlns:task="http://www.springframework.org/schema/task"
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd
- 2、接下来在实现方法上 使用 @Scheduled 注解
一般我们使用cron属性即可,表明 该定时任务以何种方式定时执行。
如:
@Scheduled(cron="0 0/5 * * * ?")
public void init(){
//do something
}
当然上述方法所在的类需要使用@Component或其他注解方式置入到Spring容器中。
另外,由于某些时候我们需要定时任务在启动后就立即执行,则 可以加上 @PostConstruct。
-3、cron表达式说明
Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:
Seconds Minutes Hours DayofMonth Month DayofWeek Year
或
Seconds Minutes Hours DayofMonth Month DayofWeek
每一个域可出现的字符如下:
Seconds:可出现", - * /"四个字符,有效范围为0-59的整数
Minutes:可出现", - * /"四个字符,有效范围为0-59的整数
Hours:可出现", - * /"四个字符,有效范围为0-23的整数
DayofMonth:可出现", - * / ? L W C"八个字符,有效范围为0-31的整数
Month:可出现", - * /"四个字符,有效范围为1-12的整数或JAN-DEc
DayofWeek:可出现", - * / ? L C #"四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推
Year:可出现", - * /"四个字符,有效范围为1970-2099年
关于cron ,比较常用的都是相对比较固定的几个周期。
网友评论