一、基本概念
Spring Boot是一個快速開發框架,提供了許多特性來簡化Spring應用程序的開發過程。其中之一就是可以指定配置文件進行啟動。
Spring Boot默認會將application.properties
或者application.yml
作為配置文件讀取,但是當我們需要讀取其他自定義的配置文件時,就需要使用到指定配置文件啟動的技巧。
二、指定配置文件
在Spring Boot中,可以通過指定特定的環境來載入不同的配置文件,具體的方法如下:
public static void main(String[] args) { SpringApplication app = new SpringApplication(Application.class); app.setAdditionalProfiles("production"); app.run(args); }
在上面的代碼中,我們通過setAdditionalProfiles()
方法指定了當前環境的特定配置文件名稱,例如這裡我們使用production
作為環境參數。在這種情況下,Spring Boot會載入以下兩個文件中的屬性:
application.properties application-production.properties
其中application.properties
為默認的配置文件,而application-production.properties
為根據環境參數指定的特定配置文件。
如果想要使用yml文件,可以通過以下方式指定:
public static void main(String[] args) { SpringApplication app = new SpringApplication(Application.class); app.setAdditionalProfiles("production"); app.setBannerMode(Banner.Mode.OFF); app.run(args); }
這裡不需要進行其他配置,只需要將application-production.yml
文件放置到src/main/resources
目錄下即可。
三、指定配置文件的位置
如果想要將配置文件放置到其他目錄下,可以通過以下方式進行指定:
public static void main(String[] args) { SpringApplication app = new SpringApplication(Application.class); app.setBannerMode(Banner.Mode.OFF); app.run("--spring.config.name=custom","--spring.config.location=file:/opt/config/"); }
在上面的代碼中,我們通過--spring.config.name
和--spring.config.location
來指定配置文件的文件名和位置。其中spring.config.name
默認值為application
,--spring.config.location
可以設置多個文件路徑,用逗號隔開。
如果希望將配置文件與應用程序打包在同一文件夾中,可以將配置文件放置到src/main/resources/config
目錄下,然後在--spring.config.name
參數後指定文件名即可。
四、多配置文件
有時候我們需要同時載入多個配置文件,例如在開發過程中需要使用開發環境和測試環境的配置文件,這時可以使用以下方法來實現多配置文件的載入。
public static void main(String[] args) { SpringApplication app = new SpringApplication(Application.class); app.setBannerMode(Banner.Mode.OFF); String[] profiles = {"dev", "test"}; app.setAdditionalProfiles(profiles); app.run(args); }
在上面的代碼中,我們將要載入的多個配置文件以數組的方式傳入setAdditionalProfiles()
方法中。
五、小結
本文主要介紹了Spring Boot的指定配置文件啟動的相關知識點,包括指定配置文件、指定配置文件的位置以及多配置文件的載入。通過靈活地使用這些知識點,我們可以更好地完成Spring Boot應用的開發。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/197301.html