在运行时从属性文件中读取值

Vis*_*ish 1 spring properties

我想根据属性file.how的请求获取特定值来做到这一点?

我有以下spring配置.我想根据请求设置Exprops的值,并从属性文件中获取相应的值

<bean id="Prop" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location">
        <value>classpath:ErrorMessage.properties</value>
    </property>
</bean>

<bean id="PropertiesBean" class="com.util.PropertiesUtil">
    <property name="Exprops" value="${EXampleExceptiion}"></property>
</bean>
Run Code Online (Sandbox Code Playgroud)

Ral*_*lph 10

使用PropertiesFactoryBean注入属性在一个Bean.

<bean id="myPropertiesBean"
  class="org.springframework.beans.factory.config.PropertiesFactoryBean">
  <property name="location" value="classpath:ErrorMessage.properties"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

这提供了一个属性对象/ Bean,可以myPropertiesBean在任何Bean(<property name="x" ref="myPropertiesBean"/>)的名称下注入.

另外Spring提供了util命名空间(自Spring 2.5开始):你可以将PropertyFactoryBean定义写得更短一些:

<util:properties id="myPropertiesBean"
 location="classpath:ErrorMessage.properties"/>
Run Code Online (Sandbox Code Playgroud)

@see 参考章节C.2.2.3.