zoukankan      html  css  js  c++  java
  • SpringBoot(一) 添加定时任务

    ps: 在我们的项目开发过程中,经常需要定时任务来帮助我们来做一些内容,springboot默认已经帮我们实行了,只需要添加相应的注解就可以实现

    一.构建项目,如图所示:

        

     创建一个用于执行定时任务的接口,以及一个接口的实现类。

    二.添加注解

          在启动类添加定时注解 @EnableScheduling

         

    在实现类添加定时任务,哪个方法需要执行定时任务,则添加到哪个方法上。

    1.  
      import com.example.smalserver.http.service.server.TimingService;
    2.  
      import org.springframework.scheduling.annotation.Scheduled;
    3.  
      import org.springframework.stereotype.Component;
    4.  
      import org.springframework.stereotype.Service;
    5.  
       
    6.  
      /**
    7.  
      * @Author: caohuijie
    8.  
      * @Date: 创建日期 2018/11/7
    9.  
      * @Modified By:
    10.  
      * @Description: 定时任务类
    11.  
      */
    12.  
      @Component
    13.  
      @Service
    14.  
      public class TimingServiceImpl implements TimingService {
    15.  
       
    16.  
      private int count=0;
    17.  
       
    18.  
      @Scheduled(cron="*/6 * * * * ?")
    19.  
      @Override
    20.  
      public void timingTask() {
    21.  
      System.out.println("this is scheduler task runing "+(count++));
    22.  
      }
    23.  
      }

     或者:

    1.  
      import com.example.smalserver.http.service.server.TimingService;
    2.  
      import org.springframework.scheduling.annotation.Scheduled;
    3.  
      import org.springframework.stereotype.Component;
    4.  
      import org.springframework.stereotype.Service;
    5.  
       
    6.  
      /**
    7.  
      * @Author: caohuijie
    8.  
      * @Date: 创建日期 2018/11/7
    9.  
      * @Modified By:
    10.  
      * @Description: 定时任务类
    11.  
      */
    12.  
      @Service
    13.  
      public class TimingServiceImpl implements TimingService {
    14.  
       
    15.  
      private int count=0;
    16.  
       
    17.  
      @Scheduled(cron="*/6 * * * * ?")
    18.  
      @Override
    19.  
      public void timingTask() {
    20.  
      System.out.println("this is scheduler task runing "+(count++));
    21.  
      }
    22.  
      }

    corn表达式:

    "0 0 * * * *" 表示每小时0分0秒执行一次

    " */10 * * * * *" 表示每10秒执行一次

    "0 0 8-10 * * *" 表示每天8,9,10点执行

    "0 0/30 8-10 * * *" 表示每天8点到10点,每半小时执行

    "0 0 9-17 * * MON-FRI" 表示每周一至周五,9点到17点的0分0秒执行

    "0 0 0 25 12 ?" 表示每年圣诞节(12月25日)0时0分0秒执行

  • 相关阅读:
    最新Sublime Text 2 激活 汉化
    深入理解JPEG图像格式Jphide隐写
    入CTF坑必不可少的地方-保持更新
    v0lt CTF安全工具包
    浅析弱口令
    尽最大可能分析上传源码及漏洞利用方式
    最新Internet Download Manager (IDMan) 6.25 Build 20 32位 64位注册破解补丁
    c# double保留2位小数
    VS2010 & Visual Assist X 的配合
    C#的回调被C++调用
  • 原文地址:https://www.cnblogs.com/gakuki/p/13678086.html
Copyright © 2011-2022 走看看