[springboot]配置檔案載入順序

le.li發表於2024-05-02

一般專案直接使用.jar檔案

以server.port配置舉例;以jar包內和jar包外說明內部和外部

配置檔案順序由高到底,如下:

  • 外部-啟動時指定引數
  • 外部-環境變數
  • 外部config/yml檔案
  • 外部yml檔案
  • 內部config/yml檔案
  • 內部yml檔案

啟動時,如果指定了啟用的profile檔案,會優先找啟用的profile檔案

如:

java -Dspring.profiles.active=dev -jar springboot.jar

外部-啟動時指定引數

如:java --server.port={8081} -jar springboot.jar

外部-環境變數

server.port={8081}

外部yml檔案

指定profile檔案:config/application-{profile}.yml

指定profile檔案:application-{profile}.yml

config/application.yml

application.yml

內部yml檔案

與外部yml順序一致

部分效果

只配置內部檔案:指定啟用檔案未xxx-dev.yml同時配置內部檔案,會優先使用啟用的,效果:

只配置內部檔案,將config下xxx-dev.yml裡邊的內容註釋掉,找不到配置時,繼續取xxx-dev.yml裡的配置,效果:

相關文章