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 lesContextLoaderPlugInde 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