首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
计划任务的改造求助
小飞侠2017
2017-11-21 20:16
请教这个计划最终实现的场景是让一个类按计划被调用。
而我现在想做的场景是 :可以创建不同的计划调用的是同一个类,只是给类传递不同的参数,改怎么实现
项目:
EOVA
1
1
评论区
小飞侠2017
2017-11-21 20:27
其实也就是如果这里的实现类能将参数传进去就好了 不知道怎么传
回复
小飞侠2017
2017-11-21 20:34
竟然解决了,哈哈 分享下方案
重写 QuartzPlugin
在
JobDetail job = JobBuilder.newJob(clazz)
.withIdentity(jobClassName, jobClassName) // name "myJob", group "group1"
.usingJobData("jobSays", "Hello World!")
.usingJobData("myFloatValue", 3.141f)
.build();
//usingJobData就是传入参数
然后在执行的类里面
protected void process(JobExecutionContext context) {
JobKey key = context.getJobDetail().getKey();
JobDataMap dataMap = context.getJobDetail().getJobDataMap();
String jobSays = dataMap.getString("jobSays");
float myFloatValue = dataMap.getFloat("myFloatValue");
System.err.println("每1秒:::"+"Instance " + key + " of DumbJob says: " + jobSays + ", and val is: " + myFloatValue);
}
就能取到了
回复
小飞侠2017
2017-11-21 21:01
还是不行,同一个类竟然不能创建多个job 怎么办怎么办
回复
Jieven
2017-11-22 01:30
整那么复杂干嘛,这不跟多个Controller 调用 一个公共的Biz 一回事吗? 你提取一个Biz就行了
回复
Jieven
2017-11-22 01:42
后续版本会进行改造,支持自定义配置参数
回复
小飞侠2017
2017-11-25 17:33
@Jieven
没明白一个JobDetail 貌似只能支持一个class类,而我的需求是让客户自定义任务,但任务都是同样的操作,传不同的参数
回复
发送
我要反馈
热门反馈
扫码入社