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 :

Injection automatique de propriétés depuis un fichier .properties


Sujet :

Spring Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    juin 2003
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2003
    Messages : 50
    Points : 38
    Points
    38
    Par défaut Injection automatique de propriétés depuis un fichier .properties
    Bonjour,

    J'ai cherché un peu sur google et dans ce forum et j'ai pas trouvé grand chose à ce sujet. Voilà, j'aimerais trouver un moyen d'injecter automatiquement les propriétés d'un fichier .properties en tant que valeurs du bean mais sans passer par les placeHolders. En gros, j'ai plusieurs fichiers de config (un pour chaque base de données) et chaque fichier contient des données spécifiques pour sa base mais les noms des paramètres sont les mêmes dans tous les fichiers. Et dans mon appli j'aimerais créer un bean pour chaque fichier de config et qui contient ces valeurs.

    Plus précisement, j'aimerais que spring me crée mes beans tout seul en faisant un "setNomParam(valueParam)" où nomParam et valueParam sont dans un fichier properties sous la forme "nomParam=valueParam".

    Est-il possible de faire ça en Spring sans passer par du code custom? Sinon, est-ce possible à faire tout court?

    Merci

  2. #2
    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
    Si tu as les mêmes clefs dans plusieurs fichiers, je vois mal comment faire (à part faire ton propre PropertyPlaceholderConfigurer bien entendu).
    Une solution peut-être : pourquoi est-ce que tu ne préfixerais pas ces clefs dans chaque fichier? Comme cela tu n'aurais plus de clefs similaires, et tu pourrais utiliser un PropertyPlaceholderConfigurer.
    Julien Dubois

    http://www.ippon.fr

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    juin 2003
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2003
    Messages : 50
    Points : 38
    Points
    38
    Par défaut
    Merci, j'y avais pensé mais c'est pas très propre je trouve. Démultiplier les propriétés pour arriver à les injecter correctement alors qu'elles suivent toutes le même pattern cela implique d'écrire le même code plein de fois.

    Plus généralement, je suis un peu étonné qu'on ne puisse pas lier les propriétés d'un bean à un fichier de config directement sans passer par ces place holders. Spring a tout ce qu'il faut puisqu'en lisant un fichier il arrive à injecter des valeurs dans les propriétés spécifiques. Pourquoi ne peut-on pas étendre le mécanisme à des fichiers .properties? Surtout qu'il est très facile d'écrire un FactoryBean qui fait ça.

Discussions similaires

  1. Réponses: 6
    Dernier message: 09/09/2010, 13h58
  2. [XL-2007] Création automatique d'onglet depuis des fichiers
    Par grping dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/09/2009, 12h36
  3. Réponses: 1
    Dernier message: 27/05/2008, 17h31
  4. [debutant]Recuper des variables depuis un fichier propertie
    Par smutmutant2003 dans le forum Langage
    Réponses: 9
    Dernier message: 14/10/2007, 18h53
  5. Réponses: 6
    Dernier message: 30/11/2006, 18h15

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