天天看點

spring-boot 速成(4) 自定義配置

spring-boot 提供了很多預設的配置項,但是開發過程中,總會有一些業務自己的配置項,下面示例了,如何添加一個自定義的配置:

一、寫一個自定義配置的類

注意上面的注解@ConfigurationProperties(prefix = "web.config"),這表示這個類将從屬性檔案中讀取web.config開頭的屬性值

二、在application.yml中配置屬性

spring-boot支援properties及yml格式,不過推薦大家使用新的yml格式,看上去更清晰

 

三、來一發

為了示範效果,可以弄一個最簡單的web應用,先來一個controller

最後跑起來的運作效果如下:

spring-boot 速成(4) 自定義配置

四、配置檔案的加載順序

把所有配置全都打在一個jar包裡,顯然不是最好的做法,更常見的做法是把配置檔案放在jar包外面,可以在需要時,不動java代碼的前提下修改配置,spring-boot會按以下順序加載配置檔案application.properties或application.yml:

4.1 先查找jar檔案同級目錄下的 ./config 子目錄 有無配置檔案 (外置)

4.2 再查找jar同級目錄 有無配置檔案(外置)

4.3 再查找config這個package下有無配置檔案(内置)

4.4 最後才是查找classpath 下有無配置檔案(内置)

參考文章:

<a href="http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config-command-line-args" target="_blank">http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config-command-line-args</a>