使用quartz時,傳入?yún)?shù)到job中的使用記錄
更新時間:2023年12月14日 09:50:18 作者:不喜歡吃貓的魚
這篇文章主要介紹了使用quartz時,傳入?yún)?shù)到job中的使用記錄,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
在使用quartz的時候不免會遇到需要在觸發(fā)定時任務的時候需要傳入對應參數(shù)進去
剛好遇到這個問題,隨手記錄下:
例子
在調用的時候直接傳入map類型的參數(shù)(此處是封裝了,故可以直接調用)
@PostConstruct
public void test(){
try {
Map param = new HashMap();
param.put("token","ssssssssss");
QuartzUtil.saveJob("test",TestJob.class,10,false,param);
} catch (SchedulerException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}具體實現(xiàn)
(在獲取到jobDeatil實例后通過獲取到JobDataMap再去賦值參數(shù)即可),代碼如下
JobDetail jobDetail = JobBuilder.newJob(jobClass).withIdentity(jobName, JOB_GROUP_NAME).build();
//設置參數(shù)
jobDetail.getJobDataMap().put("data",param);在具體的job類里去獲取參數(shù)
例子:
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("現(xiàn)在是:"+sdf.format(new Date()));
//獲取傳入的參數(shù)數(shù)據(jù)
JobDataMap data = jobExecutionContext.getJobDetail().getJobDataMap();
System.out.println(data.get("data"));
}總結
記錄下,以免忘記。。。。
好了,以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
詳解java封裝返回結果與RestControllerAdvice注解
這篇文章主要為大家介紹了java封裝返回結果與RestControllerAdvice注解實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09
IDEA SpringBoot 項目配置Swagger2的詳細教程
這篇文章主要介紹了IDEA SpringBoot 項目配置Swagger2的詳細教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11
java 輸入一個數(shù)字組成的數(shù)組(輸出該數(shù)組的最大值和最小值)
這篇文章主要介紹了java 輸入一個數(shù)字組成的數(shù)組,輸出該數(shù)組的最大值和最小值,需要的朋友可以參考下2017-02-02

