使用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")); }
总结
记录下,以免忘记。。。。
好了,以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
SpringBoot-JWT生成Token和拦截器的使用(访问受限资源)
本文主要介绍了SpringBoot-JWT生成Token和拦截器的使用(访问受限资源),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-05-05SpringBoot接收LocalDateTime参数的方式
这篇文章主要介绍了SpringBoot接收LocalDateTime参数的方式,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧2024-08-08
最新评论