IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Java Discussion :

[Quartz] Utilisation et execution d´un Batch avec Spring


Sujet :

Spring Java

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut [Quartz] Utilisation et execution d´un Batch avec Spring
    Bonjour,
    C´est avec attention que j´ai lu les articles sur les taches planifiés sur le net et le votre decrit ici http://java.developpez.com/faq/sprin...i#springquartz est assez clair.
    Mais j´ai 3 questions:

    1- je travaille avec Windows est ce que cette configuration tel que decrite dans la FAQ est orienté Linux (je vois parler de Crontab)? Peux t-on l´utiliser tel quel avec une application qui tourne completement sur windows? j´utilise Apache 5.

    2- Ou est ce que dans les configurations presentés s´effectue le parametrage du demarrage du Batch (si on veut par exemple que ca se passe tous les jours à 10h00)?

    PS: je sais que la partie <property name="jobDetail" ref="tache"/> s´occupe de ca mais la c´est en terme de quelques secondes et non en jour et heure etc.......

    3- Quel Jar doit - on telecharger pour ajouter a la config de Spring?

    Merci pour vos reponses
    A bientot

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2003
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 14
    Points : 16
    Points
    16
    Par défaut
    1. Non comme c'est du java ça tourne partout même sous Windows ;-) et oui, il te suffit de déployer le jar de Spring. Par contre tu as besoin de Tomcat pour faire tourner Spring à moins que tu ais envie d'écrire une interface cgi qui interprète tes requêtes pour les envoyer à tes classes java ...
    2. ceci te lancera ta tâche tous les jours à 10h
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
       
      <bean id="declencheurDeTache" class="org.springframework.scheduling.quartz.CronTriggerBean">
          <property name="jobDetail" ref="tache" />
          <property name="cronExpression" value="0 0 10 ? * *" />
        </bean>
      Les expression cron en gros te permettent de definir un(des) moment(s) où une une tâche dois être exécutée sous la forme "seconde minute heure jour ...". L'expression accèpte des jockers (* ?) à la place de "seconde minute ...".
      Pour plus d'info sur les expressions cron va voir ici (anglais)
    3. le jar de base de Spring te suffis. Tu peux le trouver ici


    j'epsère que j'ai pu t'aider bonne jounrée

  3. #3
    Membre chevronné

    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Novembre 2006
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 252
    Points : 1 954
    Points
    1 954
    Par défaut
    L'utilisation de spring et de l'ordonnanceur Quartz dans un serveur d'appli est indépendant du système.

    Ensuite Crontab est cité car c'est un moyen puissant d'exprimer des évènements récurrents (évènements planifiés). Dans quartz, cette définition s'appuie sur un trigger. Des triggers, il en existe plusieurs selon la complexité de l'évènement: le SimpleTriggerBean ou le plus complexe CronTriggerBean par exemple.

    Ainsi pour définir un évènement à 10h tous les jours, c'est le CronTriggerBean qui est le plus approprié. Lire ceci pour en comprendre la configuration: http://quartz.sourceforge.net/javado...onTrigger.html.

    Pour les jars, il te faut spring-context et quartz.

  4. #4
    Membre habitué

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 143
    Points : 157
    Points
    157
    Par défaut
    Pour info, il y a un projet Spring spécifique pour gérer les batchs, Spring Batch :
    http://static.springframework.org/spring-batch/

    Ce projet n'est pas un scheduler de tâches (d'ailleurs il peut fonctionner avec Quartz, Cron ou d'autres), c'est un framework spécifique pour la gestion de batch.
    Entre autres choses, il propose :
    - Des objets de domaines pour la gestion de Batch (Job, Step, etc)
    - Des utilitaires pour tout ce qui est traitement de fichier plat, XML, base de données, etc
    - Et surtout une bonne gestion des problèmes que vous allez rencontrer. En effet, le vrai problème ce n'est pas de lancer votre batch, c'est quoi faire lorsqu'il va planter... Par exemple, qu'allez vous faire si votre fichier d'hier n'a été traité qu'à moitié?

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut
    merci pour vos éclairages. je m´y mets et je vous donne la suite dès que possible....

Discussions similaires

  1. [Batch] Problème avec Spring Batch
    Par meriem15 dans le forum Spring
    Réponses: 6
    Dernier message: 16/12/2009, 16h41
  2. Réponses: 1
    Dernier message: 16/11/2009, 19h32
  3. [Batch] Batch jar java avec spring
    Par jovanovic dans le forum Spring
    Réponses: 1
    Dernier message: 24/02/2009, 20h54
  4. [Batch] Empecher L'execution dun programme en cours
    Par stylee307 dans le forum Windows
    Réponses: 13
    Dernier message: 18/04/2008, 15h41
  5. [Data] utiliser Hibernate avec Spring
    Par badi082 dans le forum Spring
    Réponses: 4
    Dernier message: 13/03/2007, 09h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo