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

Java Discussion :

Mise à jour fichier de config dans mon programme


Sujet :

Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 32
    Points : 14
    Points
    14
    Par défaut Mise à jour fichier de config dans mon programme
    Bonjour tout le monde.

    Comme indiqué dans le titre, je voudrais savoir comment prendre en compte une modification de mon fichier de configuration au cours de l’exécution de mon appli. Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public void readConfig() {
     
    		Properties props = new Properties();
     
    		try{			
    			InputStream in = new FileInputStream("conf/config.txt");
    				props.load(in);
    				in.close();
     
    				topicOut = props.getProperty("topicOut");
    		}
    			catch (IOException ex){
    				log.info("Erreur lecture fichier de Config");
    				ex.printStackTrace();
    		}
    	}
    Dans mon main j'appelle ma methode readConfig().

  2. #2
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Il faut lire périodiquement fichier de configuration et adapter le comportement de l'appli si changement. Note que dans la plupart des applications, ce n'est pas forcément trivial de changer la configuration à chaud.
    Par exemple, si ton fichier de configuration contient le driver SQL à utiliser et que tu le changes à chaud, quel est le comportement attendu ?

    Si c'est possible, le plus simple, c'est de detecter un changement de la configuration et de relancer le programme (ca peut etre fait de maniere automatique assez facilement). Encore faut-il que l'arret du programme soit possible...

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Merci. J' ai mis en place un timer qui lit le fichier de config toutes les 10 secondes et recharge les modifications qu'il y a eu. Pour l'instant ca marche sauf que le fichier de config n'est pas changé tous heures non plus. Si ya d'autres methodes qui detectent automatiquement une modification du fichier de config je suis preneur. Merci hwoarang pour ta solution..

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Tu peux utiliser la date de dernière modification du fichier avant de le lire...
    Sinon utilises des try/finally pour fermer ton fichier (ou un try-with-resources si tu utilises Java 7)


    a++

  5. #5
    Membre éprouvé
    Inscrit en
    Mars 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2006
    Messages : 848
    Points : 1 078
    Points
    1 078
    Par défaut
    Bonjour,

    Je n'ai encore jamais trop expérimenté cette fonctionnalité, mais tu dois pouvoir faire quelque chose de plus sexy avec les Watcher. Par contre, cela nécessite java7.

    Pour résumer: au lieu de surveiller en boucle, tu enregistre un listener qui est appelé quand il y a un changement.

  6. #6
    Nouveau membre du Club
    Profil pro
    Développeur D'Applications
    Inscrit en
    Décembre 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : Togo

    Informations professionnelles :
    Activité : Développeur D'Applications

    Informations forums :
    Inscription : Décembre 2004
    Messages : 17
    Points : 33
    Points
    33
    Par défaut
    Bonjour,
    Juste pour soutenir les affirmations de Deaf, tu peux utiliser la nouvelle API de JAVA 7, les Watcher Service.
    Bonne journée.

Discussions similaires

  1. Intégrer un fichier CSV dans mon programme
    Par houmad91 dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 19/03/2013, 15h58
  2. Mise à jour fichier Excel dans word
    Par fred-h dans le forum Word
    Réponses: 2
    Dernier message: 04/11/2010, 14h33
  3. Mise à jour d'une ligne dans un fichier texte en php
    Par Pouchou_for_ever dans le forum Langage
    Réponses: 5
    Dernier message: 28/10/2010, 11h31
  4. Réponses: 1
    Dernier message: 22/05/2010, 13h01
  5. Réponses: 2
    Dernier message: 12/02/2003, 15h26

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