В последнее время я получил много электронных писем, все из которых хотят знать, как Spring Boot интегрирует Quartz для выполнения нескольких задач по времени. Поскольку я не использую несколько задач по производству в производстве, я дам мне идею для реализации.
1. Создайте две новые задачи времени, следующим образом:
public Class PresenuledJob реализует job {@override public void execute (jobexecutycontext context) throws jobexecutionexception {System.out.println («Расписание job1 работает ……………………………………………………………«); }} public Class PredicleDJob2 реализует job {@Override public void execute (jobexecutycontext context) throws jobexecutionexception {system.out.println («Расписание Job2 работает ………………………………………………»); }}2. Настройте две вышеупомянутые задачи
@Component public class pcheduleralljob {@autowired private schedulerfactorybean schedulerfactorybean; /** Здесь вы можете внедрить операции базы данных для запроса всех конфигураций задач*// *** Этот метод используется для запуска всех временных задач* @Throws PradeLeRexception*/ public void GradeJobs (). / ** * */ gadejob1 (планировщик); DepareJob2 (планировщик); }/** * Настройка job1 * Задачи здесь можно настроить и размещать в свойствах или в базе данных * Если вам нужно выполнять динамические задачи времени в настоящее время, пожалуйста, см. @Throws PrageLeRexception * / private void gradejob1 (планировщик планировщика) Throws predulerException { / * * Здесь вы можете сначала запросить базу данных по имени задачи. Если задача существует в базе данных, обновите конфигурацию задачи и триггеры в соответствии с методами в классе PradeLeReFreshDataBase * Если задача не запрошена в базе данных в настоящее время, выполните следующие шаги, чтобы создать новую задачу, настройте параметры инициализации и сохранить конфигурацию в Database */ jobdetail = jobbuilder.newjob.newob.newjob.newob.newob.newob.newhob.newob. . WithIdentity ("job1", "Group1"). Build (); // выполнить CronscheduleBuilder Pradebuilder = cronschedulebuilder.cronschedule ("0/5 * * *?"); Crontrigger crontrigger = triggerbuilder.newtrigger (). Withidentity ("trigger1", "group1"). Withschedule (DepareBuilder) .build (); scheduler.schedulejob (jobdetail, crontrigger); } / ** * Настройка задания * @param scheduler * @Throws PresculERexception * / private void gradejob2 (планировщик планировщика) Throws wardelerException {jobDetail jobDetail = jobBuilder.newjob (warduledJob2.class). WithIdentity ("job2", "Group1"). CronscheduleBuilder Pradebuilder = cronscheduleBuilder.cronschedule ("0/10 * * * *?"); // crontrigger выполняет каждые 10 секунд crontrigger = triggerbuilder.newtrigger (). Withidentity ("trigger2", "group1"). Withschedule (adadebuilder) .build (); scheduler.schedulejob (jobdetail, crontrigger); }}3. Начните две задачи
@Configuration @enablescheduling @component public class pchedumelerlistener {@autowired public scheduleralljob myscheduler; /** * Выполните этот метод при запуске или используйте ApplicationListener для выполнения метода при запуске * для конкретного использования, см. См. {myscheduler.schedulejobs (); } @Bean public pradelerfactorybean bedulerfactorybean () {pradelerfactorybean padencefactorybean = new SchedulerFactorybean (); return SchedulerFactoryBean; }}4. Результаты теста следующие
Расписание job1 работает …………………………………… job1 работает …………………………………………………… бег……………………………………………………………………………………………………………………………………………………………………………………………………………… ………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………. ……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.