以编程方式创建Spring Framework任务?

我需要在我的应用程序中即时创建任务。 我怎样才能做到这一点? 我可以使用@autowired注释获取调度程序,但调度程序使用Runnable对象。 我需要提供Spring对象,以便我的任务也可以使用@autowired注释。

 @Autowired private TaskScheduler taskScheduler; 

您只需要将目标对象包装在Runnable ,然后提交:

 private Target target; // this is a Spring bean of some kind @Autowired private TaskScheduler taskScheduler; public void scheduleSomething() { Runnable task = new Runnable() { public void run() { target.doTheWork(); } }; taskScheduler.scheduleWithFixedDelay(task, delay); }