原因是Spring默认定时@Scheduled不支持L,W,C特殊字符
- 解决:@Scheduled(cron = “0 15 10 28-31 * ?”) 28-31号都执行代码块,在代码里面判断是否为月底
@Scheduled(cron = "0 15 10 28-31 * ?")
public void execute() {
//判断是否是这个月最后一天
final Calendar c = Calendar.getInstance();
if (c.get(Calendar.DATE) == c.getActualMaximum(Calendar.DATE)) {
//执行代码
log.info("执行定时任务");
}
}
本文讲述了在Spring框架中使用@Scheduled注解的定时任务遇到L,W,C特殊字符问题,以及如何在代码中实现针对28-31号每月执行一次且判断是否为月底的任务

241

被折叠的 条评论
为什么被折叠?



