最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java框架Quartz中API、Jobs和Trigger詳解

 更新時(shí)間:2023年11月13日 10:06:43   作者:mumuwei_l  
這篇文章主要介紹了Java框架Quartz中API、Jobs和Trigger詳解,JobDetail?對(duì)象是在將?job?加入?scheduler?時(shí),由客戶端程序(你的程序)創(chuàng)建的,它包含?job?的各種屬性設(shè)置,以及用于存儲(chǔ)?job?實(shí)例狀態(tài)信息的?JobDataMap,需要的朋友可以參考下

Quartz API

Quartz API的關(guān)鍵接口是:

  • Scheduler - 與調(diào)度程序交互的主要API。
  • Job - 你想要調(diào)度器執(zhí)行的任務(wù)組件需要實(shí)現(xiàn)的接口
  • JobDetail - 用于定義作業(yè)的實(shí)例。
  • Trigger(即觸發(fā)器) - 定義執(zhí)行給定作業(yè)的計(jì)劃的組件。
  • JobBuilder - 用于定義/構(gòu)建 JobDetail 實(shí)例,用于定義作業(yè)的實(shí)例。
  • TriggerBuilder - 用于定義/構(gòu)建觸發(fā)器實(shí)例。
  • Scheduler 的生命期,從 SchedulerFactory 創(chuàng)建它時(shí)開始,到 Scheduler 調(diào)用shutdown() 方法時(shí)結(jié)束;Scheduler 被創(chuàng)建后,可以增加、刪除和列舉 Job 和 Trigger,以及執(zhí)行其它與調(diào)度相關(guān)的操作(如暫停 Trigger)。但是,Scheduler 只有在調(diào)用 start() 方法后,才會(huì)真正地觸發(fā) trigger(即執(zhí)行 job)

Job 和 Trigger

一個(gè) job 就是一個(gè)實(shí)現(xiàn)了 Job 接口的類,該接口只有一個(gè)方法:

Job 接口:

  package org.quartz;

  public interface Job {

    public void execute(JobExecutionContext context)
      throws JobExecutionException;
  }

job的一個(gè) trigger 被觸發(fā)后,execute() 方法會(huì)被 scheduler 的一個(gè)工作線程調(diào)用;傳遞給 execute() 方法的 JobExecutionContext 對(duì)象中保存著該 job 運(yùn)行時(shí)的一些信息 ,執(zhí)行 job 的 scheduler 的引用,觸發(fā) job 的 trigger 的引用,JobDetail 對(duì)象引用,以及一些其它信息。

JobDetail 對(duì)象是在將 job 加入 scheduler 時(shí),由客戶端程序(你的程序)創(chuàng)建的。它包含 job 的各種屬性設(shè)置,以及用于存儲(chǔ) job 實(shí)例狀態(tài)信息的 JobDataMap。

Trigger 用于觸發(fā) Job 的執(zhí)行。當(dāng)你準(zhǔn)備調(diào)度一個(gè) job 時(shí),你創(chuàng)建一個(gè) Trigger 的實(shí)例,然后設(shè)置調(diào)度相關(guān)的屬性。Trigger 也有一個(gè)相關(guān)聯(lián)的 JobDataMap,用于給 Job 傳遞一些觸發(fā)相關(guān)的參數(shù)。Quartz 自帶了各種不同類型的 Trigger,最常用的主要是 SimpleTrigger 和 CronTrigger。

SimpleTrigger 主要用于一次性執(zhí)行的 Job(只在某個(gè)特定的時(shí)間點(diǎn)執(zhí)行一次),或者 Job 在特定的時(shí)間點(diǎn)執(zhí)行,重復(fù)執(zhí)行 N 次,每次執(zhí)行間隔T個(gè)時(shí)間單位。CronTrigger 在基于日歷的調(diào)度上非常有用,如“每個(gè)星期五的正午”,或者“每月的第十天的上午 10:15”等。

為什么既有 Job,又有 Trigger 呢?

例如,Job 被創(chuàng)建后,可以保存在 Scheduler 中,與 Trigger 是獨(dú)立的,同一個(gè) Job可以有多個(gè) Trigger;

這種松耦合的另一個(gè)好處是,當(dāng)與 Scheduler 中的 Job 關(guān)聯(lián)的 trigger 都過期時(shí),可以配置 Job 稍后被重新調(diào)度,而不用重新定義 Job;

還有,可以修改或者替換 Trigger,而不用重新定義與之關(guān)聯(lián)的 Job。

Key

將 Job 和 Trigger 注冊(cè)到 Scheduler 時(shí),可以為它們?cè)O(shè)置 key,配置其身份屬性。

Job 和 Trigger 的 key(JobKey 和 TriggerKey)可以用于將 Job 和 Trigger 放到不同的分組(group)里,然后基于分組進(jìn)行操作。

同一個(gè)分組下的 Job 或 Trigger 的名稱必須唯一,即一個(gè) Job 或 Trigger 的 key 由名稱(name)和分組(group)組成。

到此這篇關(guān)于Java框架Quartz中API、Jobs和Trigger詳解的文章就介紹到這了,更多相關(guān)Quartz的API、Jobs和Trigger內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中g(shù)c算法實(shí)例用法

    java中g(shù)c算法實(shí)例用法

    在本篇文章里小編給大家整理了一篇關(guān)于java中g(shù)c算法實(shí)例用法,有興趣的朋友們可以參考學(xué)習(xí)下。
    2021-01-01
  • SpringSecurity如何配置跨域訪問

    SpringSecurity如何配置跨域訪問

    這篇文章主要介紹了SpringSecurity如何配置跨域訪問方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Spring Cloud負(fù)載均衡及遠(yuǎn)程調(diào)用實(shí)現(xiàn)詳解

    Spring Cloud負(fù)載均衡及遠(yuǎn)程調(diào)用實(shí)現(xiàn)詳解

    這篇文章主要介紹了Spring Cloud負(fù)載均衡及遠(yuǎn)程調(diào)用實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • springmvc項(xiàng)目使用@Valid+BindingResult遇到的問題

    springmvc項(xiàng)目使用@Valid+BindingResult遇到的問題

    這篇文章主要介紹了springmvc項(xiàng)目使用@Valid+BindingResult遇到的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 解析MyBatisPlus解決邏輯刪除與唯一索引的兼容問題

    解析MyBatisPlus解決邏輯刪除與唯一索引的兼容問題

    這篇文章主要介紹了MyBatisPlus解決邏輯刪除與唯一索引的兼容問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • 小議Java中final關(guān)鍵字使用時(shí)的注意點(diǎn)

    小議Java中final關(guān)鍵字使用時(shí)的注意點(diǎn)

    final關(guān)鍵字代表著最后、不可改變,無論是在用final修飾類、修飾方法還是修飾變量時(shí),都要注意內(nèi)存分配的問題.這里來小議Java中final關(guān)鍵字使用時(shí)的注意點(diǎn):
    2016-06-06
  • Java利用構(gòu)建器模式重構(gòu)Excel導(dǎo)出工具類

    Java利用構(gòu)建器模式重構(gòu)Excel導(dǎo)出工具類

    在Java企業(yè)級(jí)開發(fā)中,Excel導(dǎo)出功能幾乎成為業(yè)務(wù)系統(tǒng)的標(biāo)準(zhǔn)配置,本文將介紹如何通過構(gòu)建器模式和流暢接口設(shè)計(jì),重構(gòu)Excel導(dǎo)出工具類,實(shí)現(xiàn)API的優(yōu)雅封裝與調(diào)用,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-06-06
  • Mybatis調(diào)用MySQL存儲(chǔ)過程的簡(jiǎn)單實(shí)現(xiàn)

    Mybatis調(diào)用MySQL存儲(chǔ)過程的簡(jiǎn)單實(shí)現(xiàn)

    本篇文章主要介紹了Mybatis調(diào)用MySQL存儲(chǔ)過程的簡(jiǎn)單實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-04-04
  • 基于Spring Security的Oauth2授權(quán)實(shí)現(xiàn)方法

    基于Spring Security的Oauth2授權(quán)實(shí)現(xiàn)方法

    這篇文章主要介紹了基于Spring Security的Oauth2授權(quán)實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • JAVA?String常用方法超詳細(xì)講解

    JAVA?String常用方法超詳細(xì)講解

    String其實(shí)是Java庫中的一個(gè)預(yù)定義的類,String不是基本類型,而是引用類型,使用引用類型的變量稱為引用變量,它引用一個(gè)對(duì)象,下面這篇文章主要給大家介紹了關(guān)于JAVA?String常用方法的相關(guān)資料,需要的朋友可以參考下
    2024-04-04

最新評(píng)論

虞城县| 泰顺县| 临洮县| 通辽市| 临邑县| 高阳县| 南城县| 保德县| 和田市| 平昌县| 永泰县| 屏南县| 涡阳县| 阜新| 博野县| 马龙县| 牟定县| 惠州市| 横峰县| 元氏县| 平果县| 探索| 施秉县| 奉新县| 太白县| 云霄县| 宣汉县| 九江县| 富顺县| 巩义市| 贡觉县| 历史| 凤台县| 达孜县| 威海市| 海淀区| 昌邑市| 广南县| 教育| 天祝| 定南县|