目前我有这个:
@Scheduled(fixedRate=5000)
public void getSchedule(){
System.out.println("in scheduled job");
}
Run Code Online (Sandbox Code Playgroud)
我可以更改它以使用对属性的引用
@Scheduled(fixedRate=${myRate})
public void getSchedule(){
System.out.println("in scheduled job");
}
Run Code Online (Sandbox Code Playgroud)
但是,我需要使用以编程方式获得的值,以便可以在不重新部署应用程序的情况下更改计划.什么是最好的方法?我意识到使用注释可能是不可能的......
我可以在applicationContext.xml中创建一个taskScheduler,并根据该cron属性定期触发我的工作。
我想cron在调度程序启动后更改此表达式(触发时间),这意味着JavaEE应用程序正在运行。
使用Spring 3.XX