通過spring.profiles.active區分環境配置


利用spring 的profile環境配置可以區分不同環境下的配置,但只能配置一個PropertyPlaceholderConfigurer,如果出現多個,后面的會覆蓋前面的,導致配置找不到。

配置文件的配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">

  <!-- 不同的配置切換 -->
  <beans profile="dev">
    <bean id="propertyConfigurer"
          class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
      <property name="locations">
        <list>
          <value>classpath*:application-dev.properties</value>
        </list>
      </property>
    </bean>
  </beans>

  <beans profile="prod">
    <bean id="propertyConfigurer"
          class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
      <property name="locations">
        <list>
          <value>classpath*:application-prod.properties</value>
        </list>
      </property>
    </bean>
  </beans>

</beans>

application-prod.properties

正式環境中的配置

application-dev.properties

測試環境中的配置

切換環境

可以在web.xml中配置默認環境

  <context-param>
    <param-name>spring.profiles.default</param-name>
    <param-value>prod</param-value>
  </context-param>

切換配置時配置spring.profiles.active變量的值,可以配置在環境變量中也可以配置配置文件中,建議配置到環境變量中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM