定时任务(corn表达式)
1 需求概述
用户创建支付订单之后,长时间没有支付,需要将订单关闭。现在存在如下的问题
-
如何确定为长时间未支付的订单:15分钟后 如何自动执行?:定时任务
2 定时任务概述
在实际项目开发中,除了Web应用、SOA服务外,还有一类不可缺少的,那就是定时任务调度。定时任务的场景可以说非常广泛:
-
某些网站会定时发送优惠邮件; 银行系统还款日信用卡催收款; 某些应用的生日祝福短信等。
那究竟何为定时任务调度,一句话概括就是:在指定的时间规则下,自动执行java方法
定时任务有很多种实现方式:
-
timer 基于quartz框架 基于Spring task的框架 分布式定时任务调度:xxl-job
3 入门案例
1)引导类
引导类上加入注解
@EnableScheduling:开启定时任务支持
2)定时任务类
注意:真实的定时任务代码是写在定时任务类的方法里的,一般都直接调用service。定时任务类写在task包下
4 corn表达式
对于定时任务,我们使用的时候主要是注重两个方面,一个是定时任务的业务,另一个就是Cron表达式。
Cron 表达式支持到六个域
月份和星期的名称是不区分大小写的。FRI 和 fri 是一样的。 域之间有空格分隔
