Magasin de propriétés Personnalisées dans aplicationContext.xml Printemps de fichier
J'ai besoin de stocker des paramètres de configuration pour une application web qui utilise le framework spring.
En général, je vais utiliser un configurationfile.les propriétés de fichier, mais je me demande si je peux stocker les valeurs dans la applicationContext.xml fichier.
Une solution pourrait être de créer une classe JavaBean pour stocker les valeurs, et à bâtir une classe à l'aide de printemps, quelque chose comme ceci:
<bean id="configurationBean" class="mypackage.someClass">
<property name="confValue1">
<value>myValue1</value>
</property>
....
</bean>
Mais je voudrais savoir si il y a un moyen de stocker ces paramètres sans avoir à créer cette classe.
Merci d'avance.
Je pense que la meilleure solution qui s'adapte à mes besoins, est l'utilisation de java.util.Les propriétés de l'instance du Ressort de Haricot.
Merci à vous tous.
OriginalL'auteur HyLian | 2009-05-20
Vous devez vous connecter pour publier un commentaire.
Cela devrait fonctionner avec la syntaxe suivante.
Vous êtes en tirant parti du fait que java.util.Les propriétés d'un constructeur de copie qui prend une des Propriétés de l'objet.
Je fais cela pour un HashSet qui a aussi un constructeur de copie (comme le font HashMaps et ArrayLists) et il fonctionne parfaitement.
OriginalL'auteur Darren Greaves
Printemps a la prise en charge intégrée pour la spécification des propriétés dans le contexte de l'application XML. Voir section 3.3.2.4 du Printemps de Référence docs.
Si vous souhaitez que le réel <bean> pour être une instance de java.util.Propriétés?
C'est ce que je cherchais. Merci 🙂
OriginalL'auteur Mark
Je pense que vous aurez les meilleurs résultats à l'aide du Printemps PropertyPlaceholderConfigurer qui vous permet de mapper les valeurs à partir d'un régulier .fichier de propriétés contre les propriétés définies sur vos haricots.
http://static.springframework.org/spring/docs/2.5.x/reference/beans.html#beans-factory-placeholderconfigurer
L'exemple montre comment définir les propriétés de la connexion JDBC directement sur une instance de javax.sql.Source de données, éliminant le besoin d'un intermédiaire "configuration de haricots."
Alors vous voulez faire référence à un lien Marque. Il montre comment vous pouvez déclarer une instance de java.util.Propriétés en XML: <property name="adminEmails"> <accessoires> <prop key="administrateur">[email protected]</prop> <prop key="support">[email protected]</prop> <prop key="développement">[email protected]</prop> </accessoires> </propriété>
vous ne pouvez pas simplement mettre des propriétés arbitraires (qui ressemble à un .fichier de propriétés) dans un fichier XML. Vous devez suivre la structure XML (comme @brd6644 mentionné ci-dessus) ou le mettre dans un autre .fichier de propriétés, comme il l'a mentionné dans son post.
OriginalL'auteur cliff.meyers
Le meilleur moyen est d'utiliser le printemps PropertyPlaceholderConfigurer
puis
et dans yourconfigurationfile.propriétés
OriginalL'auteur hank wall