App下載

如何配置SpringBoot多模塊多環(huán)境配置文件 詳細過程解析

猿友 2021-08-05 14:19:09 瀏覽數(shù) (5530)
反饋

在開發(fā) SpringBoot 項目時,通常一道程序會被應(yīng)用或安裝在不同的環(huán)境。不過不配置多模塊多環(huán)境,那么在為不同的環(huán)境打包時,就需要頻繁修改配置文件,從而容易產(chǎn)生錯誤。本篇文章將詳細為大家介紹在 SpringBoot 項目中是如何配置多模塊多環(huán)境的。

第一種情況:

spring.profiles.active=環(huán)境變量

2021041410424253

配置兩個環(huán)境的,可根據(jù)實際需要增加環(huán)境模式(開發(fā)環(huán)境dev,測試環(huán)境test,回歸壞境retu,預(yù)生產(chǎn)環(huán)境pre,生產(chǎn)環(huán)境prod,等等)

dev代表開發(fā)環(huán)境:

2021041410424254

prod代表生產(chǎn)環(huán)境

2021041410424255

pom.xml里面配置profiles:

<profiles>
    <profile>
        <id>dev</id>
        <activation>
         <!--  默認激活-->
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <spring.profiles.active>dev</spring.profiles.active>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <spring.profiles.active>prod</spring.profiles.active>
        </properties>
    </profile>
</profiles>

2021041410424256

系統(tǒng)環(huán)境變量配置:

2021041410424257

在本地,如果在這些文件里面配置端口和路徑:

appilacton.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

application-dev.yml:

server:
  port: 8088
  servlet:
    context-path:  /miservice-dev

application-prod.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

有效的是:8088那個配置。

在本地,如果分環(huán)境沒有配置,就以主環(huán)境為主:

appilacton.yml:

server:
  port: 8087
  servlet:
    context-path:  /miservice

application-prod.yml:

server:
  port: 8089
  servlet:
    context-path:  /miservice-prod

則是8087這個是有效的。

小結(jié)1:

application.yml引入配置為:

spring:
        profiles:
           active:   ${env}

即:配置讀取順序為:application.yml>>application-dev.yml

 第二種情況:

如果想多個模塊的配置文件都起作用,可將application.yml文件配置到具體的模塊去:

spring:
        profiles:
           active:   miservice, ${env}

2021041410424258

2021041410424259

在application.yml和application-miservice.yml和application-dev.yml三個文件中:如果都有端口或路徑配置,則讀取application-dev.yml里面的配置,關(guān)閉application-dev.yml里面的配置則讀取application-miservice.yml里面的配置,最后讀取application.yml

里面的配置。

application.yml引入配置為:

spring:
        profiles:
           active:   miservice, ${env}

即:配置讀取順序為:application-dev.yml>>application-miservice.yml>>application.yml

修訂一下:上面的結(jié)論是剛開始總結(jié)的,后面發(fā)現(xiàn)讀取順序是按文件的順序從下到上讀取的。即按結(jié)構(gòu)順序

到此這篇關(guān)于在SpringBoot項目中如何配置多模塊多環(huán)境的文章就介紹到這了,想要了解更多相關(guān)springboot多模塊多環(huán)境內(nèi)容,請搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持!


0 人點贊