Spring TaskScheduler使用实例解析

前端之家收集整理的这篇文章主要介绍了Spring TaskScheduler使用实例解析前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这篇文章主要介绍了Spring TaskScheduler使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

TaskScheduler

  • 提供对计划任务提供支持;
  • 使用@EnableScheduling开启计划任务支持
  • 使用@Scheduled来注解计划任务的方法;

示例

演示后台间断执行任务和定时计划任务

计划任务的配置

  1. @Configuration
  2. @EnableScheduling
  3. public class DemoConfig {
  4. }

计划配置任务类

  1. package com.wisely.task.scheduler;
  2.  
  3. import java.text.SimpleDateFormat;
  4. import java.util.Date;
  5.  
  6. import org.springframework.scheduling.annotation.Scheduled;
  7. import org.springframework.stereotype.Component;
  8.  
  9. @Component
  10. public class DemoScheduledTask {
  11.  
  12. private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
  13.  
  14. @Scheduled(fixedRate = 5000) //每五秒执行一次
  15. public void reportCurrentTime() {
  16. System.out.println("每隔五秒执行一次 " + dateFormat.format(new Date()));
  17. }
  18.  
  19. @Scheduled(cron = "0 22 11 ? * *" ) //每天上午11点22执行
  20. public void fixTimeExecution(){
  21. System.out.println("在指定时间 " + dateFormat.format(new Date())+"执行");
  22. }
  23. }

测试

  1. package com.wisely.task.scheduler;
  2.  
  3. import org.springframework.context.annotation.AnnotationConfigApplicationContext;
  4.  
  5. public class Main {
  6.  
  7. @SuppressWarnings({ "unused","resource" })
  8. public static void main(String[] args) {
  9. AnnotationConfigApplicationContext context =
  10. new AnnotationConfigApplicationContext("com.wisely.task.scheduler");
  11.  
  12. }
  13.  
  14. }

输出结果

  1. 每隔五秒执行一次 11:21:42
  2. 每隔五秒执行一次 11:21:47
  3. 每隔五秒执行一次 11:21:52
  4. 每隔五秒执行一次 11:21:57
  5. 在指定时间 11:22:00执行
  6. 每隔五秒执行一次 11:22:02

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

猜你在找的Java相关文章