一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - SpringBoot配置文件的加載位置實例詳解

SpringBoot配置文件的加載位置實例詳解

2021-05-30 15:10熊熊愛綿羊 Java教程

springboot采納了建立生產就緒spring應用程序的觀點。 在一些特殊的情況下,我們需要做修改一些配置,或者需要有自己的配置屬性。接下來通過本文給大家介紹SpringBoot配置文件的加載位置,感興趣的朋友一起看看吧

springboot采納了建立生產就緒spring應用程序的觀點。 spring boot優(yōu)先于配置的慣例,旨在讓您盡快啟動和運行。在一般情況下,我們不需要做太多的配置就能夠讓spring boot正常運行。在一些特殊的情況下,我們需要做修改一些配置,或者需要有自己的配置屬性。

springboot啟動會掃描以下位置的application.yml或者 application.properties文件作為springboot的默認配置文件

-file:./config/   

-file:./

-classpath:/config/

-classpath:/

即根目錄下的config目錄下,然后是 根目錄下,然后是classpath路徑下的config目錄下,最后是classpath路徑下。

優(yōu)先級由高到低,高優(yōu)先級的配置會覆蓋低優(yōu)先級的配置。

eg.假如:根目錄下的config目錄下定義端口為8084,  根目錄下定義端口為8083 ,classpath路徑下的config目錄定義端口為8082,classpath路徑下定義端口為8081,最后啟動,啟動的端口為8084 ,高優(yōu)先級會覆蓋低優(yōu)先級。

注意: 并不是高優(yōu)先級的被加載了,低優(yōu)先級的就不會再加載,實際上是springboot會從這四個位置全部加載主配置文件,并且還能產生互相配置的效果。

例如:  其它三個位置的主配置文件僅僅定義了端口,在最低優(yōu)先級的classpath路徑下的配置文件中配置項目訪問路徑,如下:

SpringBoot配置文件的加載位置實例詳解

定義一個簡單的controller ,用來測出訪問路徑。

SpringBoot配置文件的加載位置實例詳解

 

請看:訪問路徑變?yōu)?:

SpringBoot配置文件的加載位置實例詳解

除此外,我們還可以通過spring.config.location來改變默認的配置文件位置。

項目打包好以后,我們可以使用命令行參數(shù)的形式,啟動項目的時候來指定配置文件的新位置;指定默認加載的這些配置文件共同起作用形成互補配置。

eg : 在 g盤目錄下,創(chuàng)建一個application.properties文件(yml也可以),定義端口為8085 

打包項目,啟動命令行:java -jar  spring-boot-02-config-02.0.0.1-snapshot.jar  --spring.config.location=g:/application.properties     回車運行。

SpringBoot配置文件的加載位置實例詳解

瀏覽器訪問: http:localhost:8005/boot02/hello  ,顯然外部指定的配置文件生效了,并且與之前的主配置文件形成了互補配置

 

SpringBoot配置文件的加載位置實例詳解

外部配置加載順序

springboot也可以從以下位置加載配置,優(yōu)先級從高到低,高優(yōu)先級的配置覆蓋低優(yōu)先級的配置,所有的配置形成互補配置。

 1. 命令行參數(shù)

     eg:   java -jar  spring-boot-02-config-02.0.0.1-snapshot.jar --server.port=8087

 2. 來自java:comp/env的ndi屬性

 3. java系統(tǒng)屬性(system.getproperties() )

 4. 操作系統(tǒng)環(huán)境變量

 5. randomvaluepropertysource配置的random.*屬性值

 ---- 由jar包外向jar包內進行尋找:

   優(yōu)先加載帶profile

 6. jar包外部的application-{profile}.properties或application.yml(帶spring.profile)配置文件

    將打好的jar包放在一個目錄下,比如叫做 hello的文件夾,然后再該文件夾下新建一個名為application.yml的文件,其中指定

  port為8088 ,訪問路徑為/boot ,然后命令行直接啟動項目。java  -jar spring-boot-02-config-02.0.0.1-snapshot.jar

瀏覽器通過  localhost:8088/boot/hello 可以正常訪問,表示同級目錄下的配置文件生效了。

SpringBoot配置文件的加載位置實例詳解

SpringBoot配置文件的加載位置實例詳解

訪問情況如下:

SpringBoot配置文件的加載位置實例詳解

 7. jar包內部的application-{profile}.properties或application.yml(帶spring.profile)配置文件

 8. jar包外部的application.properties或application.yml(不帶spring.profile)配置文件

8. jar包外部的application.properties或application.yml(不帶spring.profile)配置文件

 9. jar包內部的application.properties或application.yml(不帶spring.profile)配置文件

 10. @configuration注解類上的propertysource

 11. 通過springapplication.setdefaultproperties指定的默認屬性。

所有支持的配置加載來源:

參考官方文檔   springboot外部配置

總結

以上所述是小編給大家介紹的使用springboot配置文件的加載位置實例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://blog.csdn.net/m0_37564404/article/details/81975661

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 99久久一区二区精品 | 亚洲精品视频在线免费 | 午夜性爽视频男人的天堂在线 | 日本海鸣馆| 调教全程肉动画片在线观看 | 国产精品国产高清国产专区 | 农村美女沟厕嘘嘘被偷看 | 好湿好滑好硬好爽好深视频 | 关晓彤一级做a爰片性色毛片 | 91久久福利国产成人精品 | 男生操男生 | 精品一区二区三区免费观看 | 青草青草视频 | 精品AV综合导航 | 久久黄色免费 | 齐天大性之七仙女欲春迅雷链接 | 国产精品香蕉一区二区三区 | 国产成人精选免费视频 | 娇妻被健身教练挺进小说阅读 | 日韩毛片免费线上观看 | 亚洲丰满女人ass硕大 | 男人晚上适合偷偷看的污污 | 爱福利视频一区 | 高清国语自产拍免费视频国产 | 日日操日日舔 | 九九精品国产 | 久久精品中文騷妇女内射 | 99香蕉网 | 欧美性受xxxx88喷潮 | 日本三级成人中文字幕乱码 | 婷婷色综合网 | 国产精品视频网 | 亚洲男人的天堂视频 | 久久机热视频 这里只有精品首页 | 亚洲国产黄色 | 婷婷色六月| 青草视频免费观看在线观看 | 大象传媒短视频网站 | 亚洲福利电影一区二区? | 久久er99热精品一区二区 | 精品欧美一区二区在线观看欧美熟 |