亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

springboot Quartz動態修改cron表達式的方法

2024-07-14 08:42:26
字體:
來源:轉載
供稿:網友

1、概述: 在開發中有的時候需要去手動禁止和啟用定時任務,修改定時任務的cron表達式然后再讓其動態生效,之前有過SSM的類似的業務的開發但是忘記寫下來了。。。只好重新溫習了一次,加上最近比較流行springBoot所以升級了一下用springBoot來完成.

2、關聯技術 SpringBoot、Quartz、H2、thymeleaf (好像就這么多)

3、具體流程      

1)首先去手動創建一個調度器工廠對象-SchedulerFactoryBean;其實應該不用手動創建的但是為了顧及到業務的復雜性所以還是創建一個好用。

 @Bean  public SchedulerFactoryBean schedulerFactory(){    SchedulerFactoryBean factoryBean = new SchedulerFactoryBean();    /*用于Quartz集群,啟動時更新已存在的Job*/    factoryBean.setOverwriteExistingJobs(true);    /*定時任務開始啟動后延遲5秒開始*/    factoryBean.setStartupDelay(5);    return factoryBean;  }

2)獲取到

//得到調度器Scheduler scheduler = schedulerFactoryBean.getScheduler();

3)判斷是否有觸發器-trigger存在其中,因為有可能說上次的觸發器 并沒有刪除

//獲得觸發器TriggerKey triggerKey = TriggerKey.triggerKey(config.getName(), config.getGroup());CronTrigger trigger = (CronTrigger)scheduler.getTrigger(triggerKey);

4)創建一個任務類需要繼承Job,實現方法execute。需要在其中執行定時任務如下:

//注釋作用,當上一個任務未結束時下一個任務需進行等待@DisallowConcurrentExecutionpublic class QuartzJobFactory implements Job {  public static final  String SCHEDULEJOBKEY="scheduleJob";  //execute會根據cron的規則進行執行  @Override  public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {           Config config = (Config) jobExecutionContext.getMergedJobDataMap().get(SCHEDULEJOBKEY);        TaskUtils.invokMethod(config);    }}

5)將執行實例添加到任務當中去,我在例子是將執行任務的信息封裝到了對象config當中然后在任務QuartzJobFactoryz中進行解讀的

public static void invokMethod(Config config){    Object obj=null;    Class clazz=null;    //通過Spring上下文去找 也有可能找不到   try {      obj= SpringUtils.getBean(config.getClassPath().split("//.")[config.getClassPath().split("//.").length - 1]);   if (obj == null){        clazz = Class.forName(config.getClassPath());        obj = clazz.newInstance();      }else{       clazz =obj.getClass();      }    }catch (Exception e){ throw new RuntimeException("ERROR:TaskUtils is Bean Create please check the classpath is`t right or not");    } Method method=null;    //獲得方法名    try {      method = clazz.getDeclaredMethod(config.getMethodName());   } catch (NoSuchMethodException e) {      throw new RuntimeException("ERROR:TaskUtils is Bean the method Create please check the methodName is`t right or not");     }      //方法執行    try {      method.invoke(obj);    } catch (Exception e) {   throw new RuntimeException("ERROR:TaskUtils is Bean the method execute please check the methodName is`t right or not");    }  }

6)創建觸發器并且綁定cron表達式

7)在調度器中將觸發器和任務進行組合 詳情見:com.study.www.service.QuartzTableservice.addJob

  //將cron表達式進行轉換      CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule(config.getCron());     //創建觸發器并將cron表達式對象給塞入  trigger = TriggerBuilder.newTrigger().withIdentity(triggerKey).withSchedule(cronScheduleBuilder).build();  //在調度器中將觸發器和任務進行組合  scheduler.scheduleJob(jobDetail,trigger);

github:點擊打開鏈接

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
黄色一区二区三区| 国产精品视频久久久| 欧美一级视频在线观看| 欧美中文在线观看| 欧美日韩国产精品一区二区不卡中文| 欧美日韩久久久久| 亚洲白虎美女被爆操| 91午夜理伦私人影院| 川上优av一区二区线观看| 日韩在线视频免费观看高清中文| 日日狠狠久久偷偷四色综合免费| 一区二区三区四区在线观看视频| 国产精品成人va在线观看| 国产精品r级在线| 欧美第一页在线| 久久全国免费视频| 亚洲三级黄色在线观看| 成人激情免费在线| www.精品av.com| 国产精品免费视频xxxx| 欧美视频13p| 亚洲在线观看视频| 国产一区二区色| 91老司机精品视频| 欧美亚洲国产成人精品| 日日骚久久av| 国产手机视频精品| 欧美成人精品在线| 日本免费一区二区三区视频观看| 亚洲护士老师的毛茸茸最新章节| 成人激情在线观看| 亚洲高清色综合| 色噜噜久久综合伊人一本| 亚洲精品成人久久电影| 日韩在线观看你懂的| 亚洲理论片在线观看| 欧美在线视频导航| 91久久国产精品| 国产亚洲欧美日韩一区二区| 亚洲男人天天操| 日韩一区二区三区在线播放| 国产成人精品一区二区三区| 久久久中文字幕| 国产精品激情av电影在线观看| 久久精品视频在线| 最新69国产成人精品视频免费| 91精品国产91久久| 91免费看国产| 欧美日韩一区二区精品| 久久久久久网站| 欧美日韩亚洲一区二区三区| 欧美成人精品在线观看| 国产一区二区黄| 欧美性猛交xxxx久久久| 91在线|亚洲| 欧美精品福利视频| 亚洲成人精品视频| 国产精品色婷婷视频| 91久久久精品| 国产精品三级网站| 成人在线视频网| 一区二区三区视频观看| 91精品综合久久久久久五月天| 亚洲精品国产拍免费91在线| 日韩精品免费在线观看| 亚洲aaa激情| 91精品久久久久久综合乱菊| 国产精品永久免费观看| 久久91亚洲精品中文字幕奶水| 亚洲人成网站777色婷婷| 国产美女精品视频| 91理论片午午论夜理片久久| 日韩精品视频三区| 国产精品免费视频xxxx| 国产精品小说在线| 欧美成人午夜激情视频| 97视频在线观看视频免费视频| 精品国产区一区二区三区在线观看| 91精品国产91久久久久久| 成人网中文字幕| 久久艳片www.17c.com| 国产精品88a∨| 精品国产乱码久久久久久婷婷| 国产精品香蕉国产| 国产精品一区二区3区| 日本久久久久久久久| 国产亚洲视频中文字幕视频| 亚洲在线观看视频网站| 日韩av色在线| 久久久久久国产三级电影| 狠狠躁夜夜躁人人躁婷婷91| 亚洲精品国产精品国自产观看浪潮| 国产精彩精品视频| 欧美成人免费全部| 97超级碰碰人国产在线观看| 久久伊人精品天天| 欧美裸体xxxx极品少妇| 日本一区二区在线播放| 成人激情在线播放| 国产欧美va欧美va香蕉在线| 亚洲一区二区免费在线| 亚洲精品www| 亚洲精品电影久久久| 欧美第一黄网免费网站| 国产美女精品视频| 久久精品电影网站| 91九色精品视频| 亚洲欧洲成视频免费观看| 性欧美在线看片a免费观看| 国产一区二区三区欧美| 国产日韩在线观看av| 亚洲欧美综合另类中字| 久久天天躁狠狠躁夜夜躁| 亚洲国产成人91精品| 精品久久久久久久大神国产| 欧美做爰性生交视频| 在线成人激情视频| 欧美激情小视频| 亚洲欧美日韩高清| xxxxx成人.com| 51视频国产精品一区二区| 亚洲女人天堂av| 国产精品久久精品| 91av视频在线免费观看| 国产精品美女久久久久久免费| 亚洲国产毛片完整版| 日韩精品免费在线播放| 亚洲国产成人精品一区二区| 久久精品亚洲精品| 日韩视频在线免费观看| 欧美日韩成人黄色| 欧美国产亚洲视频| 日本精品中文字幕| 中文字幕久热精品视频在线| 4438全国成人免费| 欧美性猛交xxxx免费看久久久| 欧美综合在线第二页| 亚洲国产精品免费| 久久影视三级福利片| 亚洲综合中文字幕在线观看| 成人黄色在线观看| 97在线精品视频| 国产精品爱久久久久久久| 国产噜噜噜噜久久久久久久久| 国产中文字幕亚洲| 91wwwcom在线观看| 亚洲天堂av在线播放| 欧美日本在线视频中文字字幕| 亚洲福利视频在线| 91丝袜美腿美女视频网站| 国模吧一区二区三区| 国产精品女主播视频| 国产精品成人免费视频| 美女精品久久久| 国产精品日韩欧美大师| 亚洲国产成人一区| 最近2019中文字幕第三页视频| 欧美视频在线视频| 国产精品专区h在线观看| 国产午夜精品免费一区二区三区| 欧美第一黄色网| 欧美在线一区二区三区四| 亚洲人成在线免费观看| 欧美午夜久久久|