本節我來介紹一下在springboot中定時任務的使用以及非同步呼叫。實現springboot的定時任務非常簡單,我們可以運用springboot提供的註解來實現。
>
>
org.springframework.bootgroupid
>
>
spring-boot-starter-parentartifactid
>
>
2.0.0.releaseversion
>
parent
>
>
>
>
org.springframework.bootgroupid
>
>
spring-boot-starter-webartifactid
>
dependency
>
dependencies
>
定義乙個定時任務,我們可以使用註解**@scheduled**。該註解提供多個引數,我來展示一下第乙個引數fixedrate。
/**
* @author 小吉
* @description 定時任務
* @date 2020/6/1
*/@component
public
class
task
}
在啟動類上使用註解**@enablescheduling**,可以開啟定時任務。
/**
* @author 小吉
* @description springboot啟動類
* @date 2020/6/1
*/@enablescheduling
public
class
main
}
註解**@scheduled提供了另乙個重要的引數,也是我們最常用的引數cron**。接下來我來演練一下cron引數的使用。
/**
* @author 小吉
* @description 定時任務
常用的cron表示式如下:
*/5 * * * * ? 每隔5秒執行一次
0 */1 * * * ? 每隔1分鐘執行一次
0 0 1 * * ? 每天凌晨1點執行一次:
0 0 1 1 * ? 每月1號凌晨1點執行一次
0 0 23 l * ? 每月最後一天23點執行一次
0 0 1 ? * l 每週星期天凌晨1點實行一次
0 26,29,33 * * * ? 在26分、29分、33分執行一次
0 0 0,13,18,21 * * ? 每天的0點、13點、18點、21點都執行一次
1)編寫非同步任務介面以及實現/**
* @author 小吉
* @description
* @date 2020/6/1
*/public
inte***ce
fileservice
/**
* @author 小吉
* @date 2020/6/1
*/@service
public
class
fileserviceimpl
implements
fileservice
catch
(interruptedexception e)
system.out.
println();}}
此時我們可以使用**@async**註解來定義我們的非同步任務。
2)編寫控制器
/**
* @author 小吉
* @description springboot非同步呼叫
當我們訪問download的時候,後台馬上返回提示。在返回提示之前開啟了非同步任務,非同步任務可以用來實現需要耗時的操作且馬上響應的場景。
SpringBoot 定時任務
第一步 在啟動類中加入如下註解 enablescheduling public class public static void main string args 注意 enablescheduling必須加,否則無法開啟定時任務 第二步 建立定時任務 component public class ...
Spring boot定時任務
最近做專案,需要使用定時任務,半個小時去更新redis資料,於是便學習了一下經驗。希望可以幫到你們。定時任務可使用三種 created by fx on 2017 9 4.component allargsconstructor public class featuredatatask 實現乙個任務...
Spring boot 定時任務
1.在啟動類上加 enablescheduling註解 package com.example.demo import org.springframework.scheduling.annotation.enablescheduling enablescheduling public static ...