摘要:前言用組件實現(xiàn)簡易的定時任務(wù)功能。步驟創(chuàng)建一個啟動類注意,是關(guān)鍵,加了這個注解才能啟動定時任務(wù)。編寫定時任務(wù)方法可以實現(xiàn)兩種定時,一種是每個一段時間執(zhí)行一次方法,另一種是執(zhí)行一次方法之后間隔若干時間后再執(zhí)行下一次。
前言
用Spring-Context組件實現(xiàn)簡易的定時任務(wù)功能。只可以支持較簡單的業(yè)務(wù)場景,實用價值不高。如果想要投放到生產(chǎn)環(huán)境,需要進行一些改造。
步驟 1. pom.xml2. 創(chuàng)建一個啟動類org.springframework.boot spring-boot-starter-parent 1.5.8.RELEASE org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-maven-plugin
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication @EnableScheduling public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
注意,@EnableScheduling是關(guān)鍵,加了這個注解才能啟動定時任務(wù)。
3. 編寫定時任務(wù)方法可以實現(xiàn)兩種定時,一種是每個一段時間執(zhí)行一次方法(fixedRated),另一種是執(zhí)行一次方法之后間隔若干時間后再執(zhí)行下一次(fixedDelay)。
@Component public class DemoTasks { @Scheduled(fixedRate = 5000) public void doSomethingEvery5Seconds() { System.out.println("fixedRate 5sec task executed"); } @Scheduled(fixedDelay = 3000) public void doSomethingAndSleep2Seconds() { System.out.println("fixedDelay 2sec task start"); try { Thread.sleep(4000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("fixedDelay 2sec task end"); } }完整源碼
https://github.com/gzllol/spr...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/70681.html
摘要:我們項目使用的是框架,所以我就想到用框架的定時器。,以及的結(jié)構(gòu)注在定時器這塊使用到兩個一個是用于存儲任務(wù)的實例。 這兩天老大給了個需求想把商城熱點數(shù)據(jù)同步到redis緩存。我們項目使用的是swoft框架,所以我就想到用框架的Crontab定時器。但是在測試的時候發(fā)現(xiàn)把Table的size設(shè)置為1024時(實際上設(shè)置為任何大小都一樣,貼上swoole的解釋)發(fā)現(xiàn)內(nèi)存溢出了 showImg...
摘要:背景最近來了個實習僧小弟,安排他實現(xiàn)對目標網(wǎng)站連通性檢測的小功能簡單講就是將下邊的腳本換成代碼來實現(xiàn)百度平臺狀態(tài)不正常,請注意功能實現(xiàn)使用開始執(zhí)行定時任務(wù),檢測百度網(wǎng)站連通性請求百度成功,返回報文請求異常百度執(zhí)行檢測百度網(wǎng)站連通 背景 最近來了個實習僧小弟,安排他實現(xiàn)對目標網(wǎng)站 連通性檢測的小功能,簡單講就是將下邊的shell 腳本換成Java 代碼來實現(xiàn) 1#!/bin/bash ...
摘要:前言在使用整合定時任務(wù),發(fā)現(xiàn)當某個定時任務(wù)執(zhí)行出現(xiàn)執(zhí)行時間過長的情況時會阻塞其他定時任務(wù)的執(zhí)行。問題定位后續(xù)通過翻查的文檔以及打印日志輸出當前線程信息得知問題是由于默認使用只要個線程處理定時任務(wù)。問題復(fù)盤需要注意示例的版本為。 前言 在使用Springboot整合定時任務(wù),發(fā)現(xiàn)當某個定時任務(wù)執(zhí)行出現(xiàn)執(zhí)行時間過長的情況時會阻塞其他定時任務(wù)的執(zhí)行。 問題定位 后續(xù)通過翻查Springboo...
摘要:定時任務(wù)間隔時間方式執(zhí)行一次定時任務(wù)線程休眠規(guī)定時間類類允許調(diào)度一個任務(wù)。引入依賴配置測試執(zhí)行一次定時任務(wù)使用注解是為定時任務(wù)而生的一個注解,查看注解的源碼表達式接收一個。 本文旨在用通俗的語言講述枯燥的知識 定時任務(wù)作為一種系統(tǒng)調(diào)度工具,在一些需要有定時作業(yè)的系統(tǒng)中應(yīng)用廣泛,如每逢某個時間點統(tǒng)計數(shù)據(jù)、在將來某個時刻執(zhí)行某些動作...定時任務(wù)在主流開發(fā)語言均提供相應(yīng)的API供開發(fā)者調(diào)用...
摘要:也是自帶的一個基于線程池設(shè)計的定時任務(wù)類。其每個調(diào)度任務(wù)都會分配到線程池中的一個線程執(zhí)行,所以其任務(wù)是并發(fā)執(zhí)行的,互不影響。 原創(chuàng)不易,如需轉(zhuǎn)載,請注明出處https://www.cnblogs.com/baixianlong/p/10659045.html,否則將追究法律責任?。?! 一、在JAVA開發(fā)領(lǐng)域,目前可以通過以下幾種方式進行定時任務(wù) 1、單機部署模式 Timer:jdk中...
閱讀 3062·2021-11-11 16:55
閱讀 1057·2021-09-28 09:36
閱讀 3887·2021-09-22 15:22
閱讀 2338·2021-09-06 15:12
閱讀 1853·2021-08-19 10:55
閱讀 2952·2019-08-30 12:52
閱讀 579·2019-08-29 14:03
閱讀 1345·2019-08-29 12:27