【问题标题】:Spring Properties files configuration and maven integration in different env不同环境中的 Spring Properties 文件配置和 maven 集成
【发布时间】:2013-09-05 12:57:11
【问题描述】:

由于正在使用 Spring 和 maven 开发一个大项目。但是会有不同的环境需要部署,例如开发、测试、登台和生产。

该项目针对不同的环境有很多不同的属性。

有什么优雅的方法可以解决这种事情,所以我可以把它作为模板,在其他项目中重复使用。

我猜会使用诸如配置文件、占位符等弹簧特性。

有什么好的教程或博客让我获得更好的解决方案吗?

【问题讨论】:

    标签: java spring maven spring-profiles


    【解决方案1】:

    Maven 概念配置文件可以成为您的朋友:

        <profile>
            <id>DEV</id>
            <build>
                <resources>
                    <resource>
                        <directory>src/test/dev-resources</directory>
                    </resource>
                    <resource>
                        <directory>src/main/dev-resources</directory>
                    </resource>
                </resources>
             </build>
       </profile>
       <profile>
                <id>STAGING</id>
                <build>
                  <resources>
                    <resource>
                        <directory>src/test/staging-resources</directory>
                    </resource>
                    <resource>
                        <directory>src/main/staging-resources</directory>
                    </resource>
                  </resources>
                </build>
        </profile>
    

    并使用“-P DEV”来运行您的所有 Maven 构建,例如用于开发建议和“-P STAGING”用于暂存建议。

    【讨论】:

      【解决方案2】:

      您可以使用属性配置器。像这样的:

      <bean id="propertyConfigurer"
            class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
          <property name="ignoreResourceNotFound" value="true"/>
          <property name="locations">
              <list>
                  <value>file:${catalina.home}/conf/your_props.properties</value>
              </list>
          </property>
      </bean>
      

      您可以将您的属性(在这种情况下使用Tomcat servlet 容器)放在每个不同环境中的某个配置目录下。

      在这种情况下,属性存储在${catalina.home}/conf 下,其中catalina.home 指的是Tomcat 的安装目录。

      【讨论】:

        猜你喜欢
        • 2015-09-30
        • 1970-01-01
        • 1970-01-01
        • 2014-06-29
        • 1970-01-01
        • 2014-12-27
        • 1970-01-01
        • 1970-01-01
        • 2023-03-19
        相关资源
        最近更新 更多