在我的春季启动应用程序中,我以编程方式创建计划任务,例如
@Configuration
@EnableScheduling
public class AppConfig implements SchedulingConfigurer {
@Override
public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
taskRegistrar.setScheduler(taskScheduler());
//following loop will get executed according to requirement for now //just looping 0-9
for(int i=0;i<10;i++){
MyRunnable myRunnable=new MyRunnable();
myRunnable.setID(i);
taskRegistrar.addTriggerTask(myRunnable,new CronTrigger("0 0/15 * * * *"));
}
}
@Bean(destroyMethod="shutdown")
public Executor taskScheduler() {
return Executors.newScheduledThreadPool(42);
}
@Bean
public MyTask myTask() {
return new MyTask();
}
}
我需要一些方法来重新安排上述任务,有人可以帮助我完成上述工作吗?我更希望通过ID重新安排任务,如 myRunnable.getID()。 任何帮助都会受到高度赞赏吗?
我试过在我的控制器中跟随
@Autowired
private ScheduledTaskRegistrar scheduledTaskRegistrar;
但它不是在控制器中注入