Spring bean属性的默认值和通过属性文件覆盖
spring的bean属性,如果需要在必要的时候覆盖,比如默认安装derby driver class,当用户选择了其他数据库(生成用户配置属性文件),比如mysql,则bean属性被用户的配置属性文件中的mysql driver class覆盖。这时需要使用到:
org.springframework.beans.factory.config.PropertyOverrideConfigurer
配置文件:
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyOverrideConfigurer">
<property name="location" value="classpath:config.properties" />
<property name="ignoreResourceNotFound" value="true" />
</bean><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="org.apache.derby.jdbc.EmbeddedDriver" />
</bean>
属性文件:
dataSource.driverClass=com.mysql.jdbc.Driver
这样,当不存在属性文件时,加载derby,当用户设置并生成属性文件后,则使用mysql。
这篇文章上的评论的 RSS feed TrackBack URI