@Scheduled method ‘execute‘: For input string: “L“

出现这个错误的原因是Spring默认定时@Scheduled不支持L关键字

解决方案:
首先,为每个可能的最后几天调用调度程序(28,29,30,31)。然后,在函数块内用if块检查这是否是最后一个日期。如果是,则执行预期的任务。

@Scheduled(cron = "0 15 10 28-31 * ?")
public void execute() {
	final Calendar c = Calendar.getInstance();
	if (c.get(Calendar.DATE) == c.getActualMaximum(Calendar.DATE)) {
		//是最后一天
		System.out.println("信息员等级升降级。。。。");
	}
}

你可能感兴趣的:(JAVA基础,spring)