1.首先在pom添加如下profile配置
<profiles>
<profile>
<!-- 本地開發環境 -->
<id>dev</id>
<properties>
<profiles.active>dev</profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<!-- 測試環境 -->
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
</profile>
<profile>
<!-- 生產環境 -->
<id>pro</id>
<properties>
<profiles.active>pro</profiles.active>
</properties>
</profile>
</profiles>
2.工程目錄src/main/resources中建立對應配置
如開發環境、測試環境、生產環境的配置文件分別放到src/main/resources目錄下的dev、test、pro三個子目錄中,剩余公共的配置文件放於resources目錄下,如dev的config.properties:
hibernate.dialect=org.hibernate.dialect.OracleDialect
hibernate.connection.driver_class=oracle.jdbc.driver.OracleDriver
hibernate.connection.username=platform_portal_service
hibernate.connection.password=kingstar
#hibernate.connection.url=jdbc:oracle:thin:@127.0.01:1521:orcl
hibernate.connection.url=jdbc:oracle:thin:@127.0.01:1521/dev
3.在pom中的build節點下,配置資源文件的位置,如下所示:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 資源根目錄排除各環境的配置,防止在生成目錄中多余其它目錄 -->
<excludes>
<exclude>test/*</exclude>
<exclude>pro/*</exclude>
<exclude>dev/*</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources/${profiles.active}</directory>
</resource>
</resources>
</build>
首先第一個資源文件位置src/main/resources需要排隊提各個環境的配置文件,各個環境的配置我們在第二個節點中通過前面在profile中配置的profiles.active屬性來指定。即src/main/resources/${profiles.active}。這樣在激活指定的profile時,會加載指定目錄下的配置文件,如當前激活的是pro profile,那么這個資源目錄就是src/main/resources/pro。這樣就達到了不同環境加載不同配置的目的
4.項目編譯生成
mvn clean package -Pdev即構建出生產環境需要的包
