在使用springboot写定时任务时,cron 表达式是写在程序中的,感觉这样写是不好的,如果想改时间就得改代码,是不是可以将时间配置在配置文件中呢?当然是可以的。
在application.yml中配置如下:
configtask:
cron: "*/3 * * * * ?"
通过@PropertySource(value = "classpath:/application.yml"),注意一定要写classpath,否则会找不到配置文件,task任务类如下:
@PropertySource(value = "classpath:/application.yml")
public class ScheduledTask {
@Scheduled(cron ="${cron}" )
public void testTask2() {
log.info("获取的参数{}",config.getCron());
log.info("启动第一个定时任务testTask2");
log.info("Scheduling Tasks Examples: The time is now " + new Date());
}
}
这是我想到的这样方式,请问大神们还有其它的方法吗?