springTask 和 Qu 定時任務

2021-09-05 10:11:15 字數 1641 閱讀 9512

## 指定時間執行任務:

配置檔案

# 開啟註解掃瞄

#開啟 task 註解驅動

# 註解

@scheduled(cron="* * * * * ?")

在需要定時執行的方法上新增該註解!

seconds:可出現", - * /"四個字元,有效範圍為 0-59 的整數

minutes:可出現", - * /"四個字元,有效範圍為 0-59 的整數

hours:可出現", - * /"四個字元,有效範圍為 0-23 的整數

dayofmonth:可出現", - * / ? l w c"八個字元,有效範圍為 1-31 的整數

month:可出現", - * /"四個字元,有效範圍為 1-12 的整數或 jan-dec

dayofweek:可出現", - * / ? l c #"四個字元,有效範圍為 1-7 的整數或 sun-sat 兩個範圍。1

表示星期天,2 表示星期一, 依次類推

year:可出現", - * /"四個字元,有效範圍為 1970-2099 年

每乙個域都使用數字,但還可以出現如下特殊字元,它們的含義是:

(1)*:表示匹配該域的任意值,假如在 minutes 域使用*, 即表示每分鐘都會觸發事件。

(2)?:只能用在 dayofmonth 和 dayofweek 兩個域。它也匹配域的任意值,但實際不會。因為

dayofmonth 和 dayofweek 會相互影響。例如想在每月的 20 日觸發排程,不管 20 日到底是

星期幾,則只能使用如下寫法: 13 13 15 20 * ?, 其中最後一位只能用?,而不能使用*,如

果使用*表示不管星期幾都會觸發,實際上並不是這樣。

(3)-:表示範圍,例如在 minutes 域使用 5-20,表示從 5 分到 20 分鐘每分鐘觸發一次

(4)/:表示起始時間開始觸發,然後每隔固定時間觸發一次,例如在 minutes 域使用 5/20,

則意味著 5 分鐘觸發一次,而 25,45 等分別觸發一次.

(5),:表示列出列舉值值。例如:在 minutes 域使用 5,20,則意味著在 5 和 20 分每分鐘觸發一

次。(6)l:表示最後,只能出現在 dayofweek 和 dayofmonth 域,如果在 dayofweek 域使用 5l,意

味著在最後的乙個星期四觸發。

(7)w: 表示有效工作日(周一到周五),只能出現在 dayofmonth 域,系統將在離指定日期的最

1、 建立 類

@component

public class seckilltask {

//定時 重新整理 秒殺 產品

@scheduled(cron = " * * * * ?")

public void test1(){

system.out.println(「定時任務執行了」);

2、配置檔案

3、web 中 配置

< 載入 全域性變數 >

org.springframework.web.context.contextloaderlistener

contextconfiglocation

Spring Task 定時任務

所謂定時任務,就是根據我們設定的時間定時執行任務,就像定時發郵件一樣,設定時間到了,郵件就會自動傳送。在 spring 大行其道的今天,spring 也提供了其定時任務功能,spring task。同 spring 的其他功能一樣,我們既可以通過配置檔案也可以通過註解形式來實現。一 通過配置檔案 1...

Spring Task定時任務

spring task是spring3.0以後提供的定時任務工具。使用spring定時任務,除spring相關的包外不需要新增額外的jar包,支援註解和xml配置兩種形式。準備工作 在spring配置檔案頭中新增命名空間xmlns task及描述。1.1編寫註解的定時任務類 import org.s...

Spring task定時任務

第一次寫定時任務,簡訊通知定時,雖然寫完了,但是感覺 不夠簡潔,效能不行害怕跑蹦了,放到這裡一是為了記錄,更多的是希望大家提出寶貴的意見。1.將使用者id拼接成字串,用來批量查詢使用者資訊。string memberid membertransactions.stream map membertra...