Télécharger cours: Java Quartz avec Spring

Java Quartz avec SpringSommaire: Télécharger cours: Java Quartz avec Spring

I – Introduction
I-A – Quoi ? Qu’est-ce ?
I-B – Objectif
I-C – Outils
I-D – Connaissances prérequises souhaitées mais non obligatoires
II – Préparation de notre environnement
II-A – Création du projet maven
II-B – Quartz et Spring 2.5
II-B-1 – Les dépendances à déclarer
II-B-2 – Le fichier de configuration Spring
II-B-3 – Developpement du job
II-B-3-a – Architecture de notre exemple
II-B-3-b – Création du business manager (Niveau 2)
II-B-3-c – Création du job (Niveau 3)
II-B-3-d – Configuration du job dans Spring
II-B-3-e – Création du main (Niveau 4)
II-C – Spring 2.5, Spring 3, ça change quoi ?
II-D – Spring 3
II-D-1 – Les dépendances Spring 3 à déclarer
II-D-2 – Le fichier de configuration Spring
II-D-3 – Développement du job
II-D-3-a – Exclusivement par fichier de configuration
II-D-3-a-i – Le Job, un objet simple
II-D-3-a-ii – La configuration de l’ordonnancement sous Spring.
II-D-3-a-iii – Lancement de notre job
II-D-3-b – Par les annotations
II-D-3-b-i – Le Job
II-D-3-b-ii – La configuration de l’ordonnancement sous Spring.
II-D-3-b-iii – Lancement de notre job
II-D-3-c – Un peu plus loin avec les annotations
II-D-3-c-i – Le Job
II-D-3-d – La configuration de l’ordonnancement sous Spring
II-D-3-e – Lancement de notre job
II-E – Pour ceux qui souhaitent ne pas utiliser Spring
II-F – Conclusion

Extrait du cours télécharger cours: Java Quartz avec Spring

I – Introduction
I-A – Quoi ? Qu’est-ce ?
Java Quartz avec Spring
Quartz est une API java d’ordonnancement de tâches qui permet d’automatiser le lancement de traitements oneshot ou bien réguliers.
Il en va de même pour Spring 3 et le namespace task.
I-B – Objectif
Montrer comment:
• utiliser Quartz, dans un environnement Spring 2.5;
• utiliser Spring 3 et le namespace task.
I-C – Outils
Java implicitement, Eclipse notre IDE java, maven pour les dépendances nécessaires au développement de notre tutorial.
I-D – Connaissances prérequises souhaitées mais non obligatoires
• Eclipse IDE;
• Spring framework.
II – Préparation de notre environnement
II-A – Création du projet maven
Démarrer Eclipse et lancer le wizard de création de projet via le menu File/New/Otherou via le raccourci clavier CTRL+N;
Dans la liste qui apparaît, sélectionner Maven/Maven Project et cliquer sur le bouton Next;
Cocher la case Create a simple project et cliquer sur le bouton Next;
Identifier votre projet en renseignant les zones Group Idet Artifact Id, puis cliquer sur le bouton Finish: votre projet est créé.
II-B – Quartz et Spring 2.5
II-B-1 – Les dépendances à déclarer
Editer le fichier pom.xml et ajouter les dépendances suivantes juste avant la balise </project> :
<dependencies>
<dependency>
<groupId>opensymphony</groupId>
<artifactId>quartz</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.1</version>
</dependency>
</dependencies>
Sauvegarder le fichier.
II-B-2 – Le fichier de configuration Spring
Dans le dossier /src/main/resources, créer un fichier nommé applicationContext.xml dont le contenu est pour le moment:
<?xml version= »1.0″ encoding= »UTF-8″?>
<beans xmlns= »http://www.springframework.org/schema/beans »
xmlns:xsi= »http://www.w3.org/2001/XMLSchema-instance »
xsi:schemaLocation= »http://www.springframework.org/schema/beans http://www.springframework.org/schema/
beans/spring-beans.xsd »>
</beans>
II-B-3 – Developpement du job
II-B-3-a – Architecture de notre exemple
• Niveau 4 : Le main (programme principal) qui lancera le job;
• Niveau 3 : Le job Quartz qui lancera le traitement à réaliser via le business manager;
• Niveau 2 : Le business manager : les traitements métiers (besoin fonctionnel) utilisateurs de la couche de niveau 1;
• Niveau 1 : Le ou les objets permettant la satisfaction du ou des traitements métier.
II-B-3-b – Création du business manager (Niveau 2)
Le business manager de notre exemple n’est qu’un simple objet intégrant une méthode (satisfaisant notre besoin fonctionnel) qui sera appelée par notre job.
packagequartz.exemple.manager;
public classBusinessManager {
public voidrunAction() {
System.out.println(« In business manager, I call the business action ») ;
}
}
II-B-3-c – Création du job (Niveau 3)
Un job n’est qu’un simple POJO intégrant une méthode d’exécution du job. Pour satisfaire à notre architecture, ce job intègre aussi un objet Manager que l’on nommera génériquement pour l’exemple Business Manager, Business Manager dont on appelle une méthode d’exécution satisfaisant un besoin fonctionnel. Pour permettre l’injection par Spring du manager, la définition d’un accesseur (setter) est nécessaire.
II-B-3-d – Configuration du job dans Spring
Dans le fichier applicationContext.xml, nous déclarons :
– le business manager
<bean id= »businessManager »class= »quartz.exemple.manager.BusinessManager »/>
– le POJO job et l’injection du business manager dans ce job
<bean id= »QuartzExempleJob »class= »quartz.exemple.job.QuartzExempleJob »>
<property name= »businessManager »ref= »businessManager »/>
</bean>
– le lien entre le POJO job et l’API quartz (objet + méthode appelée)
<bean name= »jobDetail »class= »org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean »>
<property name= »targetObject »ref= »QuartzExempleJob »/>
<property name= »targetMethod »value= »execute »/>
</bean>
– les paramètres de notre job (fréquence d’exécution) via une cron expression
<bean id= »jobCronScheduler »class= »org.springframework.scheduling.quartz.CronTriggerBean »>
<property name= »jobDetail »ref= »jobDetail »/>
<property name= »cronExpression »value= »1 * * ? * * »/>
</bean>

………..
Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Télécharger cours: Java Quartz avec Spring (313 KO)  (Cours PDF)
Java Quartz avec Spring

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *