启东做网站,包括,网站建设shwzzz,p2p借贷网站开发一般情况下#xff0c;quartz的job中使用autowired注解注入的对象为空#xff0c;这时候我们就要使用spring-quartz提供的AdaptableJobFactory类。 自定义一个类: [java] view plaincopy public class JobFactory extends AdaptableJobFactory { Autowired … 一般情况下quartz的job中使用autowired注解注入的对象为空这时候我们就要使用spring-quartz提供的AdaptableJobFactory类。 自定义一个类: [java] view plaincopy public class JobFactory extends AdaptableJobFactory { Autowired private AutowireCapableBeanFactory capableBeanFactory; Override protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception { //调用父类的方法 Object jobInstance super.createJobInstance(bundle); //进行注入 capableBeanFactory.autowireBean(jobInstance); return jobInstance; } } 然后在spring中配置: [html] view plaincopy !-- 定时任务的factorybean,配置其他config -- bean idjobFactory classcom.xx.job.JobFactory/bean bean idschedulerFactoryBean classorg.springframework.scheduling.quartz.SchedulerFactoryBean property namejobFactory refjobFactory/property /bean 这时候我们在定义类继承job的时候就可以使用autowired注入service对象了 [java] view plaincopy public class Test1Job implements Job { public final Logger log Logger.getLogger(this.getClass()); Autowired private JobTaskService jobTaskService; public void execute(JobExecutionContext context) throws JobExecutionException { //更新上一次执行时间和下一次计划执行时间 Date nextProcessTime context.getNextFireTime(); ScheduleJob job (ScheduleJob) context.getJobDetail().getJobDataMap().get(scheduleJob); job.setNextProcessTime(nextProcessTime); jobTaskService.updateTaskByJobName(job); //业务逻辑 System.out.println(22222222222222222222:); } }