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 :

Lancer une méthode dès qu'un fichier est modifié


Sujet :

Java

  1. #1
    Membre du Club

    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 49
    Points
    49
    Billets dans le blog
    1
    Par défaut Lancer une méthode dès qu'un fichier est modifié
    Bonjour à tous !

    J'ai un fichier .properties, et j'aimerai que les paramètres qui sont dedans se mettent automatiquement à jour dans le programme java qui les utilises.

    Pour l'instant, j'ai une classe singleton Parameters qui charge ces paramètres :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    package utils;
     
    import java.io.FileInputStream;
    import java.util.Properties;
     
    public final class Parameters {
    	/*---------- Database information ----------------*/
    	private static final String HOST = "host";
    	private static final String DB_NAME = "dbName";
    	private static final String USER_NAME = "userName";
    	private static final String PASSWORD = "password";
    	private static final String PORT = "port";
    	/*-------------------------------------------------*/
     
    	private static final int PORT_DEFAULT = 9099;
     
    	private static final String PROPERTY_FILE_PATH = "c:/properties.properties";
    	private static final String NULL = "null";
    	private Properties properties = new Properties();
     
    	/*********** SINGLETON PATTERN ***************/
    	private static Parameters instance = new Parameters();
     
    	public static Parameters getInstance() {
    		return Parameters.instance;
    	}
     
    	private Parameters() {
    		try {
    			properties.load(new FileInputStream(PROPERTY_FILE_PATH));
    		} catch (Exception e) {
    			e.printStackTrace();;
    		}
    	}
     
    	/*********************************************/
     
    	private String getSafeString(String key) {
    		Object o = properties.get(key);
    		if ( (o == null) || ( ((String) o).equals(NULL) ) ) {
    			return null;
    		}
     
    		return (String) o;
    	}
     
    	/********** DATABASE INFORMATION *************/
    	public String getHost() {
    		return this.getSafeString(HOST);
    	}
     
    	public String getDBName() {
    		return this.getSafeString(DB_NAME);
    	}
     
    	public String getUserName() {
    		return this.getSafeString(USER_NAME);
    	}
     
    	public String getPassWord() {
    		return this.getSafeString(PASSWORD);
    	}
     
    	public int getPort() {
    		String s = this.getSafeString(PORT);
    		if (s == null)
    			return PORT_DEFAULT;
     
    		return Integer.parseInt(s);
    	}	
    }
    J'aimerais donc savoir si il est possible que cette instance se mette à jour automatiquement dès que le fichier properties est modifié sans avoir à relancer le programme java.

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 078
    Points : 7 986
    Points
    7 986
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club

    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 50
    Points : 49
    Points
    49
    Billets dans le blog
    1
    Par défaut
    Ça m'a l'air parfait ! Merci !

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

Discussions similaires

  1. [POO] appel d'une méthode d'un autre fichier, le tout objet
    Par aaaaaaaa dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/07/2007, 18h43
  2. Réponses: 7
    Dernier message: 02/07/2007, 16h06
  3. lancer une méthode de la page parente
    Par kastor_lapon dans le forum ASP.NET
    Réponses: 2
    Dernier message: 29/05/2007, 17h15
  4. Faire une sauvegarde par copie de fichier, est-ce fiable ?
    Par guidav dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2006, 10h17
  5. Lancer une méthode d'une classe Owner
    Par akabane dans le forum Delphi
    Réponses: 4
    Dernier message: 19/05/2006, 00h17

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