zoukankan      html  css  js  c++  java
  • SpringBoot整合定时任务

    定时任务一般是项目中都需要用到的,可以用于定时处理一些特殊的任务。 在SpirngBoot中使用定时任务变的特别简单,不需要再像SpringMVC一样写很多的配置,只需要在启动类上增加一个@EnableScheduling注解即可。

    启动类开启定时任务

     1 //开启定时任务
     2 @EnableScheduling
     3 @RestController
     4 @SpringBootApplication
     5 //设置扫描的包名
     6 @ComponentScan(basePackages = {"com.preach.controller"})
     7 public class InchlifcApplication {
     8    public static void main(String[] args) {
     9       SpringApplication.run(InchlifcApplication.class, args);
    10    }
    11 }

    使用定时任务的类上使用注解@Compoment,在方法上使用注解@Scheduled

     1 @Component
     2 public class IndexController {
     3 
     4     /**
     5      * 时间间隔,每隔5秒执行一次
     6      */
     7     @Scheduled(fixedRate = 5000)
     8     public void task() {
     9         System.out.println("现在时间是:"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
    10     }
    11 }

    @Compoment用来标明这是一个被Spring管理的Bean
    @Scheduled是方法上注解,添加该注解的方法即为单个计划任务,有两种方式可以定义:

    1. @Scheduled(fixedRate = 3000)
      通过@Scheduled声明该方法是计划任务,使用fixedRate属性每隔固定时间执行一次

    2. @Scheduled(cron = "0 0/10 * * * ?")
      使用cron表达式可按照指定时间执行,这里是每10分钟执行一次;

    结果

    微信截图_20180413161248.png

  • 相关阅读:
    nagios对windows流量的检测
    Zabbix中文使用手册
    SNMP的应用
    十大经典排序算法最强总结(含JAVA代码实现)
    各种排序算法总结和比较
    MyBatis的Insert操作详解
    MyBatis 返回insert操作主键
    MyBatis insert/delete/update 的返回值
    利用aopc创建schema失败
    neo4j开发自定义存储过程注意事项
  • 原文地址:https://www.cnblogs.com/PreachChen/p/8901987.html
Copyright © 2011-2022 走看看