如何在spring中使用ResourceBundleMessageSource定义和使用多个属性文件

时间:2015-05-18 10:36:30

标签: java spring

我可以使用ResourceBundleMessageSource定义两个属性文件,如:

<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basenames">
        <list>
            <value>com/app/view/web/AppResource1</value>
            <value>com/app/view/web/AppResource2</value>
        </list>
    </property>
</bean>

如果可以使用ResourceBundleMessageSource,如何在Bean文件中使用这两个属性文件。直到现在,我只在一个bean中使用一个属性文件,通过将 messageSource 注入其中并使用like:

public class BeanOne {
  public BeanOne(ResourceBundleMessageSource bundleMessageSource) {
    this.messageSource = bundleMessageSource;
  }
  ....
  this.messageSource.getMessage("",locale);
}

请告诉我如何访问bean中的两个属性文件。感谢。

1 个答案:

答案 0 :(得分:1)

这两个文件的属性都包含在消息源中。

如果你有com/app/view/web/AppResource1

com.app.view.web.propertyA=foo

com/app/view/web/AppResource2

com.app.view.web.propertyB=bar

然后在你的bean中,你可以访问它们:

messageSource.getMessage("com.app.view.web.propertyA", LOCALE); // foo
messageSource.getMessage("com.app.view.web.propertyB", LOCALE); // bar