Exemple de planificateur Struts 1 + Spring 2.5.6 + Quartz 1.6
Dans ce didacticiel, vous allez intégrer le framework Struts + Spring + Quartz pour effectuer une tâche de planificateur. Spring est livré avec une solution prête pour intégrer facilement les Struts et Quartz. La relation comme suit:
Struts <--(Plug-In)--> Spring <--(Spring-Helper)--> Quartz <---> Scheduler task
Les outils utilisés :
-
Struts 1.3.10
-
Printemps 2.5.6
-
Quartz 1.6.3
1. Tâche du planificateur
Créez une tâche de planificateur et leprintMessage()
est la méthode que vous souhaitez planifier.
Fichier: SchedulerTask.java
package com.example.common.quartz; public class SchedulerTask { public void printMessage() { System.out.println("Struts + Spring + Quartz integration example ~"); } }
2. Travail du planificateur
Pour intégrer Spring à Quartz, créez un SchedulerJob qui étend lesQuartzJobBean
de Spring, au lieu de la classe Quartz Job.
Fichier: SchedulerJob.java
package com.example.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. Aide au quartz de Spring
Spring est livré avec de nombreuses classes d'aide Quartz pour simplifier les processus globaux du planificateur Quartz - Scheduler, Trigget, Job et JobDetails.
Fichier: spring-scheduler.xml
4. Struts
Pour intégrer Spring avec Struts, vous devez inclure lesContextLoaderPlugIn
de Spring dans le fichier de configuration Struts.
Fichier: struts-config.xml
5. Comment ça fonctionne
Lors de l’initialisation de Struts, il démarrera le conteneur Spring Ioc via le plug-in SpringContextLoaderPlugIn
Struts; Lors de l'initialisation de Spring, il démarrera automatiquement le travail planifié Quartz.
Dans cet exemple, la méthodeprintMessage()
sera exécutée toutes les 5 secondes.
Télécharger le code source
Téléchargez-le -Struts-Spring-Quartz-Example.zip
Références
Pour plus de détails, vous pouvez vous référer aux didacticiels suivants