每月十五号执行一次代码
//每天晚上凌晨一点刷新一下
@Scheduled(cron = "0 00 01 ? * *")
public void run() {
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
String time = df.format(new Date());
// 当前天等于15
if (time.split("-")[2].equals("15")) {
// 创建批次
Result vo = ikunlunsptableservice.queryZdnew();
System.out.println(vo.getMessage());
}
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("每月16生成下一个月的月计划。");
}
代码思路:每个天晚上凌晨一点刷新一下,若为十五号,执行代码。
时间配置代码:
"0/10 * * * * ?" 每10秒触发
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 15 10 * * ?" 每天上午10:15触发
"0 15 10 * * ? *" 每天上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 15 * ?" 每月15日上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发