使用quartz时,传入参数到job中的使用记录
更新时间:2023年12月14日 09:50:18 作者:不喜欢吃猫的鱼
这篇文章主要介绍了使用quartz时,传入参数到job中的使用记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
在使用quartz的时候不免会遇到需要在触发定时任务的时候需要传入对应参数进去
刚好遇到这个问题,随手记录下:
例子
在调用的时候直接传入map类型的参数(此处是封装了,故可以直接调用)
@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();
}
}具体实现
(在获取到jobDeatil实例后通过获取到JobDataMap再去赋值参数即可),代码如下
JobDetail jobDetail = JobBuilder.newJob(jobClass).withIdentity(jobName, JOB_GROUP_NAME).build();
//设置参数
jobDetail.getJobDataMap().put("data",param);在具体的job类里去获取参数
例子:
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("现在是:"+sdf.format(new Date()));
//获取传入的参数数据
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 输入一个数字组成的数组(输出该数组的最大值和最小值)
这篇文章主要介绍了java 输入一个数字组成的数组,输出该数组的最大值和最小值,需要的朋友可以参考下2017-02-02


最新评论