1 定時任務

2021-10-19 05:11:10 字數 1573 閱讀 9477

● 使用者對某商品進行下單操作;

● 系統需要根據使用者購買的商品資訊生成訂單並鎖定商品的庫存;

●系統設定了60分鐘使用者不付款就會取消訂單;

●開啟乙個定時任務,每隔10分鐘檢查下,如果有超時還未付款的訂單,就取消訂單並取消鎖定的商品庫存。

●由於springtask已經存在於spring框架中,所以無需新增依賴。

●只需要在配置類中新增乙個@enablescheduling註解即可開啟springtask的定時任務能力。

package com.macro.mall.tiny.config;

import org.springframework.context.annotation.configuration;

import org.springframework.scheduling.annotation.enablescheduling;

/** * 定時任務配置

* created by macro on 2019/4/8.

*/@configuration

@enablescheduling

public

class

springtaskconfig

新增ordertimeoutcanceltask來執行定時任務

package com.macro.mall.tiny.component;

import org.slf4j.logger;

import org.slf4j.logge***ctory;

import org.springframework.scheduling.annotation.scheduled;

import org.springframework.stereotype.component;

/** * created by macro on 2018/8/24.

* 訂單超時取消並解鎖庫存的定時器

*/@component

public

class

ordertimeoutcanceltask

}

corn表示式生成器

「0 0 12 * * ?」 每天中午十二點觸發

「0 15 10 ? * *」 每天早上10:15觸發

「0 15 10 * * ?」 每天早上10:15觸發

「0 15 10 * * ? *」 每天早上10:15觸發

「0 15 10 * * ? 2005」 2023年的每天早上10:15觸發

「0 * 14 * * ?」 每天從下午2點開始到2點59分每分鐘一次觸發

「0 0/5 14 * * ?」 每天從下午2點開始到2:55分結束每5分鐘一次觸發

「0 0/5 14,18 * * ?」 每天的下午2點至2:55和6點至6點55分兩個時間段內每5分鐘一次觸發

「0 0-5 14 * * ?」 每天14:00至14:05每分鐘一次觸發

「0 10,44 14 ? 3 wed」 三月的每週三的14:10和14:44觸發

「0 15 10 ? * mon-fri」 每個周

一、周二、周

三、周四、周五的10:15觸發

Springboot定時任務(1)

在springboot中使用定時定時任務可以說是一種享受 不需要引入其他的依賴,springboot框架的預設依賴就足以滿足 org.springframework.boot spring boot starter parent 2.4.0 在啟動類上需要加入 enablescheduling註解,...

linux定時任務 at定時任務

at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...

任務排程框架(1)系統定時任務與JDK定時任務

參考linux 的crontab命令 windows 下面的計畫任務特點 例子public static void main string args 1000l,2000l timer.schedule new timertask catch interruptedexception e 乙個任務異...