JobDataMap属于JobDetail的一部分
可以在构建JobDataMap时传递参数

取出参数2种形式:
第1种:可以从execute方法的上下文中取出参数
第2种:在Job类中,定义参数名称,完成getset方法

推荐使用第2种+lombok

添加参数

        //创建JobDetailJobDetail jobDetail = JobBuilder.newJob(MyJob.class)//唯一标识.withIdentity("jobDetail1", "group1")//添加参数通过usingJobData方法,传递给job.usingJobData("name","yx").build();

第1种:可以从execute方法的上下文中取出参数

package com.gblfy.job;import org.quartz.Job;
import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;import java.time.LocalTime;public class MyJob implements Job {@Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime = LocalTime.now();/*1.从上下文中先获取getJobDetail2.再从getJobDetail中获取JobDataMap3.最后,从JobDataMap中,根据key获取对应属性的值*/JobDataMap jobDataMap = context.getJobDetail().getJobDataMap();String name = jobDataMap.getString("name");System.out.println("hello " + name + "我正在执行" + localTime);}
}


第2种:在Job类中,定义参数名称,完成getset方法

package com.gblfy.job;import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;import java.time.LocalTime;public class MyJob implements Job {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime = LocalTime.now();System.out.println("hello " + name + "我正在执行" + localTime);}
}


为了减少代码,建议引入lombok

 </dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.12</version></dependency>

刚才的代码,简化为

package com.gblfy.job;import lombok.Getter;
import lombok.Setter;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.time.LocalTime;public class MyJob implements Job {@Getter@Setterprivate String name;@Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime = LocalTime.now();System.out.println("hello " + name + "我正在执行" + localTime);}
}


效果是一样的

JobDataMap传递参数_02相关推荐

  1. HarmonyOS 界面跳转以及界面跳转的同时传递参数

    HarmonyOS 不带参数界面之间跳转 package com.example.myapplication.slice; import com.example.myapplication.Resou ...

  2. 【Qt】信号和槽对值传递参数和引用传递参数的总结

    在同一个线程中 当信号和槽都在同一个线程中时,值传递参数和引用传递参数有区别: 值传递会复制对象:(测试时,打印传递前后的地址不同) 引用传递不会复制对象:(测试时,打印传递前后的地址相同) 不在同一 ...

  3. python获取当前进程id_Python进程,多进程,获取进程id,给子进程传递参数操作示例...

    本文实例讲述了Python进程,多进程,获取进程id,给子进程传递参数操作.分享给大家供大家参考,具体如下: 线程与线程之间共享全局变量,进程之间不能共享全局变量. 进程与进程相互独立  (可以通过s ...

  4. ref和out 传递参数(C#)

    1.参数传递默认都是传递栈空间里面存储的内容 2.如果添加了ref那么传递的都是栈空间地址,而不再是栈空间里面的内容 3.如果添加了out,那么传递的也是栈空间的地址 1 //写一个方法计算一个int ...

  5. python参数传递方法_深入理解python中函数传递参数是值传递还是引用传递

    python 的 深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是&q ...

  6. React history.push 传递参数

    从一个组件跳转到另外的组件,通过代码控制跳转如下: history.push("/index/goodsinfo/goodsdetail"); ///index/goodsinfo ...

  7. React 组件之间传递参数

    其实react组件之间传递参数是比较简单的,但是没有具体的使用过,组件之间传递参数是比较常见的事情,所以记录一下,防止以后自己在网上胡乱的翻找 最近做了一个商品的列表页面,我想通过点击修改能够实现商品 ...

  8. Antd-Design List渲染列中Button 点击事件 传递参数

    背景:使用List 渲染的后台数据列表中,点击删除按钮,可以将该项对应的主键传递给函数 点击删除的时候,将该条商品记录对应的id 传递给函数,通过调用后台接口删除  可以看到的是关键代码: onCli ...

  9. React onClick 传递参数

     背景说明 在下图这样的列表中,点击删除按钮需要执行删除操作 列表产生: {title: '操作',dataIndex: 'rowguid',key: 'rowguid',render: (text, ...

最新文章

  1. AE 9.3代码 升级到AE10.0
  2. cookies和session区别
  3. 1743. 从相邻元素对还原数组
  4. jQuery如何在线导入js包
  5. 好代码实践:基于Redis的轻量级分布式均衡消费队列
  6. JMeter 做接口性能测试,YYDS!
  7. 支持同步的php目录,php – rsync同步省略目录
  8. 为什么你必须了解云原生?!
  9. 手机上有没有学python的软件-如何优雅的在手机上进行Python编程
  10. 关于OPENCV 访问外部传进来的Mat矩阵元素的问题
  11. 中级.NET开发人员应该知道些什么?
  12. 智器SmartQ T7历险记
  13. i.MX6ULL终结者RS232驱动测试及RS485测试
  14. 大数据思维的十大核心原理
  15. matlab绘制频谱图代码,用MATLAB实现函数的频谱图
  16. CF949A Zebras 构造
  17. 距离度量与相似度度量
  18. php array assoc,PHP array_uintersect_assoc() 函数
  19. 令人匪夷所思的 Magic 之魔数,你真的不会
  20. 微信中提示浏览器打开网址链接如何解决

热门文章

  1. 夜读丨72名研究生被清退:孩子,你前半生偷的懒,后半生得拼命还
  2. 数学到底有多重要?网友:道理都懂,实力不允许啊
  3. css打印适应纸张_从生态平衡到打印机故障分析
  4. NS2相关学习——可靠的MANET应用程序的Gossip协议分析
  5. NBU计算机专业期末考试记录
  6. 中国剩余定理(模板+代码)
  7. AI让边缘更智能 边缘让AI无处不在
  8. 闲鱼对Flutter-Native混合工程解耦的探索
  9. 开发函数计算的正确姿势——借助 Ghostscript 将 PDF 转换成 JPG
  10. Kubenetes 监控一站式解决方案:阿里云 Prometheus 免费公测