国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

SpringBoot 這兩個配置文件有什么區別?

開發 前端
?本文講解了關于 SpringBoot 自動裝配的兩個配置文件spring.factories? 和 spring-autoconfigure-metadata.properties有什么區別?

?本文講解了關于 SpringBoot 自動裝配的兩個配置文件spring.factories? 和 spring-autoconfigure-metadata.properties有什么區別?

??讀過上一片文章你可能會發現,在自動裝配相關源碼閱讀的過程中涉及到了兩個配置文件 spring.factories? 和 spring-autoconfigure-metadata.properties,如果查看過內容,你會覺得他們非常相似。

那么 spring.factories? 和 spring-autoconfigure-metadata.properties有什么區別呢?

圖片

spring.factories

“約定大于配置”在 Springboot 是一個很重要的思想,有一個約定就是 SpringBoot 啟動的時候會加載 META-INF/spring.factories 配置文件。在 spring.factories 文件中,配置都是按照 Key-Value 形式保存的,Key 是需要解析類的全路徑名,Value 是一個或多個類的全路徑名,用逗號分隔,并且 spring.factories 文件可能有多個。Spring Boot 自動裝配解析的核心配置文件就是它。

以 Feign 舉例:

# spring.factories 文件
org.springframework.boot.autoconfigure.EnableAutoCnotallow=\
org.springframework.cloud.openfeign.ribbon.FeignRibbonClientAutoConfiguration,\
org.springframework.cloud.openfeign.FeignAutoConfiguration,\
org.springframework.cloud.openfeign.encoding.FeignAcceptGzipEncodingAutoConfiguration,\
org.springframework.cloud.openfeign.encoding.FeignContentGzipEncodingAutoConfiguration

spring-autoconfigure-metadata.properties

spring.factories 和 spring-autoconfigure-metadata.properties 類似,都是位于 META-INF 目錄下的文件,并且都是 Key-Value 形式保存數據。不同的是 ,后者的 Key 的格式為 類的全路徑名.自動裝配條件?,Value 為 類的全路徑名,使用逗號分隔。它管理的是 Bean 的裝配條件。

假設有兩個類需要自動裝配,但是有裝配的順序要求,這就無法僅僅依靠 spring.factories 來實現,于是有了 spring-autoconfigure-metadata.properties,他的 Key 后面追加名字就代表了對應的裝配條件。

以 Feign 的配置文件舉例:

org.springframework.cloud.openfeign.encoding.FeignAcceptGzipEncodingAutoConfiguration.AutoCnotallow=org.springframework.cloud.openfeign.FeignAutoConfiguration

上面這段配置就代表 FeignAcceptGzipEncodingAutoConfiguration 必須在 FeignAutoConfiguration 裝配之后再裝配。

如何生成 spring-autoconfigure-metadata.properties

如果你閱讀過源碼,可能會發現源碼文件中并沒有找到 spring-autoconfigure-metadata.properties 文件,但是編譯好的包中卻有,這是怎么一回事呢?

因為它是自動生成的!

對于類路徑上的每個自動配置類,Spring Boot 必須計算 @ConditionalXXX 條件值,用于決定是否加載自動配置及其所需的所有類,根據 Spring 啟動應用程序中 starter 的數量,這可能會花費很多時間,為了提升啟動時間,我們需要在 pom.xml 中添加一個依賴:

<dependency>  
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure-processor</artifactId>
<optional>true</optional>
</dependency>

這樣它會解析各種 condition,生成 spring-autoconfigure-metadata.properties 文件。這樣,Spring Boot 在啟動期間讀取這些元數據,可以過濾出不滿足條件的配置,而不必實際檢查這些類,提升啟動速度。

總結

spring.factories :用于配置哪些 Bean 進行自動裝配。

spring-autoconfigure-metadata.properties :控制 Bean 裝配的條件信息,自動生成。

責任編輯:武曉燕 來源: 后端開發技術
相關推薦

2019-04-02 10:50:05

框架Spring開發

2020-12-10 10:32:33

區塊鏈比特幣數字貨幣

2019-09-26 06:27:59

FTPSFTPTCP

2021-02-07 17:27:29

屬性DOM元素

2023-09-15 11:26:16

2021-06-30 21:20:21

Python變量閉包

2022-06-06 14:53:02

LoRaLoRaWAN

2020-03-09 20:56:19

LoRaLoRaWAN無線技術

2022-09-07 18:32:57

并發編程線程

2018-07-13 17:05:22

SQLMySQL數據庫

2022-09-08 18:38:26

LinuxWindowsmacOS

2020-11-09 14:07:53

PyQtQt編程

2023-10-13 15:48:17

OT系統

2024-09-09 13:10:14

2011-08-08 14:09:55

dhcpbootp

2024-03-05 18:59:59

前端開發localhost

2022-08-02 08:23:37

SessionCookies

2024-05-27 00:40:00

2020-09-25 08:19:51

SecOps vs D

2022-02-27 15:33:22

安全CASBSASE
點贊
收藏

51CTO技術棧公眾號

亚洲国产高清在线| 国产男女免费视频| 凹凸日日摸日日碰夜夜爽1| 好吊妞国产欧美日韩免费观看网站| 亚洲美女屁股眼交3| 国产98在线|日韩| 黄色网一区二区| 欧美激情视频在线观看| 亚洲36d大奶网| 亚洲欧美另类在线| 嫩草影院网站在线| 亚洲午夜久久久| 黄网在线免费| 精品噜噜噜噜久久久久久久久试看| 国产精品网红福利| 日韩av大片| 久久er99热精品一区二区三区| 日韩1区2区3区| 色综合av综合无码综合网站| 亚洲精品国产无套在线观| 污视频在线观看网站| 精品美女被调教视频大全网站| 亚洲精品中文字幕| 欧美在线视频免费| 影音先锋亚洲电影| 久久久久福利视频| 亚洲精品中文字幕在线观看| 一区二区高清不卡| 久久精品视频中文字幕| 美女毛片一区二区三区四区最新中文字幕亚洲 | 亚洲色图在线看| 黄色片在线免费看| 亚洲色图综合久久| 亚洲欧美日本伦理| 午夜一区二区三区| 国产精品九色蝌蚪自拍| 黄网站免费在线观看| 欧美大片大片在线播放| 国产精品多人| 黑人糟蹋人妻hd中文字幕| 欧洲av一区二区嗯嗯嗯啊| 欧美在线va视频| 国产a一区二区| 久久久不卡网国产精品二区| 日本在线人成| 国产69精品99久久久久久宅男| 99视频一区| 九色成人在线| 亚洲精品国产欧美| 成人精品中文字幕| 国产女主播自拍| 欧美自拍丝袜亚洲| 白嫩亚洲一区二区三区| 国产欧美日韩一区| 中文字幕一区二区三区在线播放 | 在线看a视频| 亚洲精品福利视频| 久久国产亚洲精品| av免费观看网| 精品久久久久av影院| 成人3d动漫在线观看| 日韩欧美亚洲天堂| 欧美一区二区三区思思人| 蜜桃a∨噜噜一区二区三区| 女人床在线观看| 欧美性高清videossexo| 北条麻妃一区二区三区在线| 中文字幕一区二区三区最新| 欧洲一区二区av| 台湾色综合娱乐中文网| av在线免费观看国产| 69久久夜色精品国产69蝌蚪网| 精品影片在线观看的网站| 91九色在线观看视频| 国产一区二区亚洲| 在线电影中文日韩| 日韩午夜黄色| 黄页免费在线观看| 欧美富婆性猛交| 国产成人免费视频网站| 黄色免费在线观看| 97久草视频| 黄色精品一区二区| 自拍亚洲一区| 我要看一级黄色大片| 精品国产区一区二区三区在线观看| 免费在线欧美视频| av激情在线| 久久久久久高清| 在线免费观看日本一区| 亚洲成人最新网站| 中文在线√天堂| 国产精品永久免费视频| 亚洲午夜久久久久久久久久久 | 综合网日日天干夜夜久久| 欧美a级一区二区| 91一区二区三区在线| 国产一区视频观看| 欧美吻胸吃奶大尺度电影| 亚洲精品久久| 日本h片在线看| 国产精品a久久久久久| 中文字幕在线一区免费| 视频小说一区二区| 特黄特色大片免费视频大全| 国产精品99久久99久久久二8| 亚洲色图.com| 亚欧日韩另类中文欧美| 亚洲 欧美 日韩 国产综合 在线| 色偷偷亚洲男人天堂| 久久日一线二线三线suv| jizz性欧美23| 日韩黄色动漫| 亚洲淫片在线视频| 欧美日韩国产首页在线观看| 老司机午夜精品视频| 欧美影视资讯| 亚洲一区日韩精品| 国产精品三级美女白浆呻吟 | 图片婷婷一区| 伊人75在线| 日本一区免费在线观看| 中文字幕在线观看不卡视频| 久久久亚洲精品石原莉奈| av女同在线| 91人成网站www| 午夜在线电影亚洲一区| 一区二区三区毛片免费| 亚亚洲欧洲精品| 亚洲综合中文字幕在线| 色综合一个色综合| 久久久久美女| wwwww亚洲| 日韩激情视频一区二区| 欧美成人午夜影院| 国产精品成人在线观看| 欧美日韩性在线观看| 福利视频在线看| 日韩高清专区| 亚洲一级免费视频| 国产亚洲精品超碰| 国产精品视频一区二区三区四蜜臂| 日韩精品视频无播放器在线看 | 欧美大片1688| 免费成人在线视频网站| 超碰精品一区二区三区乱码| 中国色在线观看另类| 国产精品入口久久| 成人av一区| 黄瓜视频免费观看在线观看www| 久久久极品av| 亚瑟在线精品视频| 日本在线不卡一区| 九色porny丨首页入口在线| 一菊综合网成人综合网| 91网免费观看| 欧美视频一区在线观看| 另类调教123区| avtt综合网| 九色在线免费| 自拍偷拍一区二区三区| 欧美精品18videos性欧| 亚洲激情一二三区| 欧美日韩综合视频网址| 亚洲自拍欧美精品| 免费成人av| 在线视频三级| 黄色av观看| 国产精品嫩草影院在线看| 国产欧美一区二区三区沐欲| 国产亚洲视频在线观看| 国产精品视频久久久| 日本一区二区黄色| caoporn成人免费视频在线| 国产精品五月天| 国产69久久精品成人| 日本xxxxxxxxxx75| 久久久久久久久久久视频| 超碰国产在线观看| 欧美亚洲色图校园春色| 国产日韩av一区| 欧美日韩美女一区二区| 国产亚洲人成a一在线v站| 欧美成人免费全部| 97碰碰视频| 黄色在线看片| 久久激情五月激情| 欧美视频中文字幕| 免费国产一区| av剧情在线观看| 99久久激情| 在线欧美小视频| 欧美亚洲爱爱另类综合| 涩涩视频在线播放| 国内精品自线一区二区三区视频| 久久久久久亚洲精品| 妞干网在线播放| 深夜福利视频一区| 久久一区91| 亚洲一区二区视频|