Pour l’une de nos applications Web, nous utilisons le chargement dynamique des fichiers de propriétés en fonction de l’environnement de tomcat.
Dans tomcat nous définissons la variable d'environnement -Dcustom.env.name = "production" et donc en fonction de l’environnement, les fichiers de propriétés correspondants sont récupérés et chargés via Spring "s PropertyPlaceholderConfigurer.
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:jdbc_${custom.env.name}.properties</value>
<value>classpath:configuration_${custom.env.name}.properties</value>
</list>
</property>
</bean>
Maintenant, pour une raison quelconque, nous voulons avoir la custom.env.name propriété à spécifier via un autre fichier de propriété résidant sur le système de fichiers, en dehors du fichier war. Quel est le moyen d'y parvenir avec le moins de changements de code.
Réponses:
0 pour la réponse № 1Utilisation catalina.properties
lire cette propriété.