Configuration du dataSource en fonction de l'environnement
Salut à tous,
Je développe actuellement une application utilisant Spring Roo. Le fichier applicationContext.xml contient les paramètres afin d'établir la connexion à la base de données.
Mon problème est que mon application tourne à présent sur deux environnements :
- dev : mon laptop
- preprod : Cloud Foundry
- prod : A venir
Voici la partie du XML concernée par mon problème :
Code:
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
|
<!--
Database Configuration Local
-->
<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" id="dataSource">
<property name="driverClassName" value="${database.driverClassName}"/>
<property name="url" value="${database.url}"/>
<property name="username" value="${database.username}"/>
<property name="password" value="${database.password}"/>
<property name="testOnBorrow" value="true"/>
<property name="testOnReturn" value="true"/>
<property name="testWhileIdle" value="true"/>
<property name="timeBetweenEvictionRunsMillis" value="1800000"/>
<property name="numTestsPerEvictionRun" value="3"/>
<property name="minEvictableIdleTimeMillis" value="1800000"/>
<property name="validationQuery" value="SELECT 1"/>
</bean>
<!--
Database Configuration CloudFoundry
-->
<!--<cloud:data-source id="dataSource" />-->
<!--
EntityManager
-->
<bean class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" id="entityManagerFactory">
<property name="persistenceUnitName" value="persistenceUnit"/>
<property name="dataSource" ref="dataSource"/>
</bean> |
Actuellement, je dois à chaque fois commenter la partie correspondante lorsque je travaille en local ou que je déploie sur CloudFoundry.
Y'a-t-il une technique afin d'établir une condition pour que le bon bean soit choisi en fonction de l'environnement ?
Merci d'avance :)