Spring Task简单使用
学习链接:https://juejin.cn/post/6844904186522370056
- Spring Task是SpringBoot自带的功能,已经存在于Spring框架中,所以无需添加依赖
- 在项目启动入口处即**Application处添加@EnableScheduling注解即可开启SpringTask的定时任务能力。
- 编写Task类来执行定时任务即可,如以下代码:
package ltd.hanzo.mall.task;
import lombok.extern.slf4j.Slf4j;
import ltd.hanzo.mall.service.TaskService;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
* @Author 皓宇QAQ
* @email 2469653218@qq.com
* @Date 2020/5/19 23:33
* @link https://github.com/Tianhaoy/hanzomall
* @Description: 每天定时扫描订单 未支付状态的单子发送邮件提醒支付
*/
@Slf4j
@Component
public class CallPaySpringTask {
@Resource
private TaskService taskService;
/**
* cron表达式:Seconds Minutes Hours DayOfMonth Month DayOfWeek [Year]
*/
@Scheduled(cron = "0 0 5 * * ?")
private void callPay() {
log.info("通过SpringTask开始批量发送待支付订单邮件提醒");
//这里调用自己的定时任务接口--我这里调用的是发送待支付订单邮件的接口
taskService.callPayOrders();
}
}