L’utilizzo del file applicationContext è fondamentale quando si vuole utilizzare spring, purtroppo molte volte quando si lavora in team, è possibile che certe informazioni varino e perciò ogni volta che si commita un file, per cambiare ad esempio la configurazione del db, si avrà il file modificato ed avremmo problemi in fase di deploy.

Per evitare questi problemi è possibile appoggiarsi ad un file di properties, dove andremmo a depositare le stringhe di configurazione, o comunque tutte quelle configurazione che possono variare a seconda dell’utente.

Per prima cosa bisogna inserire all’interno del file applicationContext.xml

<context:property-placeholder
location="classpath:META-INF/spring/application.properties"/>

grazie a Spring è possibile utilizzare la parola chiave classpath: che ci permette di nascondere gran parte del percorso e andare direttamente al sodo.

Infatti il file application.properties è stato creato all’interno del progetto eclipse: ${nomeprogetto}\src\main\resources\META-INF\spring\application.properties e contiene le seguenti voci:

database.url=local:C:/Users/dlagos/Documents/workspace_repo/....

database.user=admin
database.password=admin

Utilizzeremmo ad esempio le informazioni dentro il file application properties per poi  inserire all’interno di un bean.

<bean id="PersistenceManager"
class="it.assetdata.aventinus.persistence.OrientPersistenceManager"
scope="session" lazy-init="true">
<property name="adminUserName" value="${database.user}">
</property>
<property name="adminUserPassword" value="${database.password}">
</property>
<property name="database" value="${database.url}"></property>
</bean>

Per maggiori informazioni: http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-classpath-scanning

Annunci