如何在Spring中调度任务?

x33g5p2x  于2022-09-21 转载在 Spring  
字(0.8k)|赞(0)|评价(0)|浏览(294)

如何调度任务?

myScheduledTasks类被安排为定期或以一定的时间间隔运行。它是一个普通的spring组件。@Scheduledannotation可以用在一个方法上以定义它的运行时间。在这种情况下,我们希望该方法在一定的时间间隔后被执行。我们把它称为一个任务。我们也可以配置任务,一旦任务被执行,在一定的延迟后运行,或者我们可以使用cron格式。在这个例子中,该任务将在86400000毫秒或一天内执行一次。

import org.springframework.schedulling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.inject.Inject;

@Component
public class myScheduledTasks {
   @Inject
   private AppInfo appinfo;

   @Scheduled(fixedrate = 86400000)
   public void print() {
      appinfo.print();
   }
}

要执行什么?

现在我们已经学会了如何调度一个任务,但是当任务开始时,将执行什么呢?出于这个原因,我已经注入了AppInfo类。请阅读我的另一篇博文以了解AppInfo类包含的内容。执行print()方法的调度任务在AppInfo对象上调用*print()*方法。

如何启用调度?

在包含主方法的spring boot应用程序文件中,我们用*@SpringBootApplication*来注释该类,这使得该应用程序成为spring boot应用程序。我们需要对同一个类进行注解以启用调度。

在thespring.io guide上可以找到一个关于同一主题的综合例子。

相关文章

微信公众号

最新文章

更多