我使用Quartz 2在Java中创建一个Interval。
现在我想将对象obj1 从更新程序传递到 UpdateJob 。 我该怎么做?
Interval.java/Updater:
public class Interval {
public static void Updater( Object obj1 ) throws SchedulerException {
JobDetail job = newJob(UpdateJob.class).withIdentity("UpdateJob", "Group1").build();
Trigger trigger = newTrigger().withIdentity("UpdateTrigger", "Group1")
.withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(5).repeatForever()).build();
Scheduler sched = new StdSchedulerFactory().getScheduler();
sched.scheduleJob(job, trigger);
sched.start();
}
}
UpdateJob.java:
public class UpdateJob implements Job {
public void execute(JobExecutionContext context)
throws JobExecutionException {
//obj1 jobs
}
}
答案 0 :(得分:1)
您可以使用数据图
job.getJobDataMap().put("key",obj1);
然后从工作中获取它:
JobDataMap data = _context.getJobDetail().getJobDataMap();
Object o = data.get("key");