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

Langage Java Discussion :

Comment utiliser le timer


Sujet :

Langage Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Points : 134
    Points
    134
    Par défaut Comment utiliser le timer
    Bonjour ,
    Je réalise une application de gestion de licence.
    Chaque licence possède une date d'alerte quand cette date est atteinte une alerte est envoyée par mail.
    J'ai regardé du coté de Timer et TimerTask.
    Le TimerTask contiendra toujours la même chose c'est à dire envoyer un message.
    Mais pour le Timer je devrais utiliser la méthode schedule(TimerTask , Date )
    c'est là où je bloque pour une licence je comprends mais pour 50 licences comment je peux implémenter ça.(Il me faudrait autant de timer que de licence ou bien comment passer la date en argument ? ).

    Voilà j'espère que j'ai été clair.

    A votre bon coeur Msieur Dame

    Merci

  2. #2
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Bonjour, tu peux faire quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class LicenceTimer extends Timer {
        public LicenceTimer(Date dateExpiration) {
            schedule(new Notificateur(), dateExpiration);
        }    
        private class Notificateur extends TimerTask {
            public void run() {
                // envoi du mail                
            }
        }
    }
    Et tu instancies un LicenceTimer par licence.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Points : 134
    Points
    134
    Par défaut
    Merci pour la réponse ,
    un licenceTimer par licence est ce que ça n'alourdit pas l'application.
    Sinon parce que la nuit porte conseil conseil j'ai pensé à un truc :
    une fois par jour tous les jours j'ai un thread qui fait une requete sur une
    de mes tables pour voir les licences qui arrivent à expiration s'il n'y en a pas
    il ne fait rien par contre s'il trouve alors il lance le timer avec le timertask
    Est ce que cette méthode porte un nom.
    En gros j'aurai deux timertask ( un timertask avec la requete ) et un timerTask avec "envoyer message" Est ce qu'il est possible de les imbriquer
    Qu'est ce que tu en penses ?

    Merci

  4. #4
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Si tu fais un TimerTask qui vérifie si une licence à expirer, il peut directement se charger d'envoyer le message en cas de licence expirée, pas besoin d'en faire un 2è.
    Cette solution me parait mieu que la précédente.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 354
    Points : 134
    Points
    134
    Par défaut
    Cette solution me parait mieu que la précédente.
    Cette solution est mieux et plus simple je suis encore loin de devenir un
    vrai développeur.
    En résumé :
    Je fais un TimerTask qui va faire une requete sur la bdd si elle trouve une licence expirée elle envoie un message.
    ça c'est clair.
    Et pour le timer je le lance une fois dans le programme principale et je lui demande de se répéter tous les jours.

    OK Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment utiliser le timer de directx avec c#
    Par accion mutante dans le forum C#
    Réponses: 9
    Dernier message: 19/07/2009, 04h36
  2. comment activer et utiliser le timer
    Par hanou88 dans le forum MFC
    Réponses: 1
    Dernier message: 14/06/2009, 11h05
  3. comment utiliser un Timer dans ma methode rpc
    Par groupe dans le forum GWT et Vaadin
    Réponses: 7
    Dernier message: 01/07/2008, 15h01
  4. Réponses: 26
    Dernier message: 13/12/2006, 07h35
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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