Автор оригинала: mkyong.
В этом уроке вы интегрируете Struts + Spring + Quartz framework вместе для выполнения задачи планировщика. Пружина поставляется с готовым решением для легкой интеграции стоек и кварца. Отношения следующие:
Struts <--(Plug-In)--> Spring <--(Spring-Helper)--> Quartz <---> Scheduler task
Используемые Инструменты:
- Стойки 1.3.10
- Весна 2.5.6
- Кварц 1.6.3
1. Задача планировщика
Создайте задачу планировщика, и сообщение печати()
– это метод, который вы хотите запланировать.
Файл: SchedulerTask.java
package com.mkyong.common.quartz; public class SchedulerTask { public void printMessage() { System.out.println("Struts + Spring + Quartz integration example ~"); } }
2. Задание планировщика
Чтобы интегрировать Spring с Quartz, создайте задание планировщика, которое расширяет возможности Spring QuartzJobBean
, вместо класса заданий Quartz.
Файл: SchedulerJob.java
package com.mkyong.common.quartz; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import org.springframework.scheduling.quartz.QuartzJobBean; public class SchedulerJob extends QuartzJobBean { private SchedulerTask schedulerTask; public void setSchedulerTask(SchedulerTask schedulerTask) { this.schedulerTask = schedulerTask; } protected void executeInternal(JobExecutionContext context) throws JobExecutionException { schedulerTask.printMessage(); } }
3. Кварцевый помощник весны
Spring поставляется со многими вспомогательными классами Quartz для упрощения общих процессов планировщика Quartz – планировщика, триггера, заданий и заданий.
Файл: spring-scheduler.xml
4. Распорки
Чтобы интегрировать Spring с распорками, вам необходимо включить ContextLoaderPlugIn
пружины в файл конфигурации распорки.
Файл: struts-config.xml
5. как это работает
Во время инициализации Struts он запустит контейнер Spring Ioc с помощью Spring ContextLoaderPlugIn
Подключаемый модуль Struts; Во время инициализации Spring он автоматически запустит запланированное задание Quartz.
В этом примере метод printMessage()
будет выполняться каждые 5 секунд.
Скачать Исходный Код
Рекомендации
Для более подробного объяснения вы можете обратиться к следующим учебным пособиям
Оригинал: “https://mkyong.com/struts/struts-spring-quartz-scheduler-integration-example/”