0

我希望能够在我的 MVC REST 应用程序中使用不同的 application.properties。我已经为我的每个环境创建了 application-.properties。我只能通过设置 -Dmyapp.env= 然后添加

<context:property-placeholder location="classpath:application-    ${myapp.env}.properties"  />

我正在查看 spring 配置文件,并认为我可以有一个 application.properties,并且在该文件中设置 spring.profiles.active= 并且特定的 application-.properties 文件也将被读取并覆盖 application.properties 中设置的任何 proeprties。 .但我无法让它工作,我注意到文档提到这个工作与弹簧靴..

有没有办法让它与网络应用程序一起工作(不是弹簧启动)

4

1 回答 1

0

我似乎无法让配置文件按我想要的方式工作。基本上,我希望能够拥有一个基本属性文件。然后拥有特定于环境的属性文件,其中相同的属性将覆盖基本属性。所以这就是我发现的代替使用配置文件的内容。

<beans:bean     class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<beans:property name="locations">
            <beans:list>
                <beans:value>classpath:application.properties</beans:value>
                <beans:value>classpath:application-    ${myenv}.properties</beans:value>
            </beans:list>
        </beans:property>
    <beans:property name="ignoreResourceNotFound" value="true"/>

我可以为“myenv”设置系统属性以获取覆盖属性。如果未定义系统属性,它将仅读取基本文件

于 2015-10-26T13:38:06.947 回答