Java 将对象传递给 Quartzjob ( Quartz 2 )

Java pass Object to Quartzjob ( Quartz 2 )

我使用 Quartz 2 在 Java 中创建一个间隔。

现在我想将 Object obj1Updater 传递到 UpdateJob。 我该怎么做?

间隔。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

          }

    }

你可以使用datamap

job.getJobDataMap().put("key",obj1);

然后从作业中获取:

    JobDataMap data = _context.getJobDetail().getJobDataMap();
    Object o = data.get("key");