最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

為什么說要慎用SpringBoot @ComponentScan

 更新時間:2021年07月15日 10:05:47   作者:神韻499  
本文主要介紹了為什么說要慎用SpringBoot @ComponentScan,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧

場景復(fù)現(xiàn)

為了統(tǒng)一定制一個過濾器(Filter),所以在另外一個工程里面創(chuàng)建了一個過濾器,并通過jar包的方法導(dǎo)入當前項目,通過@ComponentScan({"org.example.config"})指定掃描包路徑。

下面的我的啟動類

 導(dǎo)入的jar

問題

預(yù)期效果是這樣,正常加載 

啟動后,原來的Swagger目錄進去是這樣的,原來的Controller全部都沒有被加載進來

解密

以為過濾器導(dǎo)致所有路徑?jīng)]有加載,后面百度了解BasicErrorController是在沒有定義SwaggerConfig配置時默認的controller

那我的SwaggerConfig就沒有生效了呀???

水落石出了,SwaggerConfig沒有被加載到容器中,原來是啟動類惹的貨,為了加載一個啟動類外的bean-MyFilterBean到容器中導(dǎo)致--啟動類配置@ComponentScan({"org.example.config"})

如果啟動類不加@ComponentScan注解,那它默認是掃描啟動類及子包下的類。我這配置不就是改變了最初的功能嗎,真的是基礎(chǔ)不牢地洞山搖~~~

解決方案

1、多加個@ComponentScan,這樣也掃描啟動類及子包下的類了

2、直接將當前啟動類路徑加入掃描路徑中

3、

在resourecs資源目錄下創(chuàng)建META-INF文件夾,在文件夾中創(chuàng)建spring.factories文件

 文件內(nèi)容:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
org.example.config.MyFilterBean

啟動后發(fā)現(xiàn)MyFilterBean也被加載到bean中了(在調(diào)用api時,通過日記/斷點等驗證) 

注:

由于直接在過濾器類上使用@Compont注解注冊過濾器默認會過濾所有的URL請求生效,上面測試時都是為了方便。真實使用時,為了可以控制特定的URL才觸發(fā)過濾器,我們通過FilterRegistrationBean來注冊過濾器,過濾的URL模式通過FilterRegistrationBean類的addUrlPatterns方法設(shè)置,如下圖所示:

到此這篇關(guān)于為什么說要慎用SpringBoot @ComponentScan的文章就介紹到這了,更多相關(guān)SpringBoot @ComponentScan 慎用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 實例解析Java日期格式工具類DateUtil.java

    實例解析Java日期格式工具類DateUtil.java

    本文主要對Java日期格式工具類DateUtil.java進行實例解析。具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • java 判斷字符串是否包含子串的方法

    java 判斷字符串是否包含子串的方法

    這篇文章主要介紹了java 判斷字符串是否包含子串的方法的相關(guān)資料,這里提供了三種方法幫助大家實現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-08-08
  • Java并發(fā)編程中的CompletableFuture使用詳解

    Java并發(fā)編程中的CompletableFuture使用詳解

    這篇文章主要介紹了Java并發(fā)編程中的CompletableFuture使用詳解,Future接口定義了操作異步任務(wù)執(zhí)行的一些方法,如獲取異步任務(wù)執(zhí)行的結(jié)果、取消任務(wù)的執(zhí)行、判斷任務(wù)是否被取消,判斷任務(wù)是否執(zhí)行完畢等,需要的朋友可以參考下
    2023-12-12
  • Java InputStream的多種使用詳解

    Java InputStream的多種使用詳解

    這篇文章主要介紹了Java InputStream的多種使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2019-12-12
  • java中volatile關(guān)鍵字的作用詳解

    java中volatile關(guān)鍵字的作用詳解

    這篇文章主要介紹了java中volatile關(guān)鍵字的作用詳解,volatile可以保證,若一個線程改變了某塊內(nèi)存的值,其他線程是可見的,以至于其他線程能及時更新這塊內(nèi)存,需要的朋友可以參考下
    2023-09-09
  • arthas?jprofiler做復(fù)雜鏈路的調(diào)用分析

    arthas?jprofiler做復(fù)雜鏈路的調(diào)用分析

    這篇文章主要為大家介紹了arthas?jprofiler做復(fù)雜鏈路的調(diào)用分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • springboot集成mybatis-plus全過程

    springboot集成mybatis-plus全過程

    本文詳細介紹了如何在SpringBoot環(huán)境下集成MyBatis-Plus,包括配置maven依賴、application.yaml文件、創(chuàng)建數(shù)據(jù)庫和Java實體類、Mapper層、Service層和Controller層的設(shè)置,同時,還涵蓋了時間自動填充、分頁查詢、多對一和一對多的數(shù)據(jù)庫映射關(guān)系設(shè)置
    2024-09-09
  • Java的RocketMQ之消息存儲和查詢原理詳解

    Java的RocketMQ之消息存儲和查詢原理詳解

    這篇文章主要介紹了Java的RocketMQ之消息存儲和查詢原理詳解,一臺Broker服務(wù)器只有一個CommitLog文件(組),RocketMQ會將所有主題的消息存儲在同一個文件中,這個文件中就存儲著一條條Message,每條Message都會按照順序?qū)懭?需要的朋友可以參考下
    2024-01-01
  • java實現(xiàn)文件的上傳功能

    java實現(xiàn)文件的上傳功能

    這篇文章主要為大家詳細介紹了java實現(xiàn)文件的上傳功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Java--裝箱和拆箱詳解

    Java--裝箱和拆箱詳解

    本篇文章主要介紹了詳解Java 自動裝箱與拆箱的實現(xiàn)原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-07-07

最新評論

景谷| 阿荣旗| 睢宁县| 临漳县| 诏安县| 台北市| 正阳县| 佛冈县| 修文县| 衡阳市| 夏津县| 德清县| 抚宁县| 通江县| 乌拉特前旗| 甘洛县| 公安县| 剑阁县| 库伦旗| 工布江达县| 台北县| 韩城市| 惠来县| 浪卡子县| 阳东县| 惠水县| 襄樊市| 肃南| 浦东新区| 马鞍山市| 高阳县| 天全县| 思南县| 县级市| 枣庄市| 格尔木市| 泌阳县| 鹰潭市| 日土县| 任丘市| 靖远县|