SpringBoot默認包掃描機制與默認配置文件詳解
一、SpringBoot默認包掃描機制 - 示例
默認情況下,掃描啟動類同級及其子級包下的所有文件。我們可以通過以下的測試來驗證一下。
1. 當(dāng)BannerController放在啟動類的,程序運行成功

2. 當(dāng)BannerController移動到上一級目錄,不在啟動類的包及其子包下,程序運行失敗

二、SpringBoot默認掃描包機制 - 原理
實際上SpringBoot啟動類上面的@SpringBootApplication里面有一個@ComponentScan,它可以掃描啟動類同級及其子級包下的所有文件,并且把帶有@Component、@Repository、@Service、@Controller的類注冊到Spring容器。
三、SpringBoot手動掃描包機制 - 原理&示例
正如上述所說的,SpringBoot默認掃描包機制是因為已經(jīng)在@ComponentScan指定掃描啟動類同級及其子級包下的所有文件,當(dāng)我要被掃描的文件不在啟動類同級及其子級包下,那么我們可以通過在啟動類頭上加上@ComponentScan()來指定我們要掃描的包。

四、@ComponentScan與@MapperScan
@Component、@Repository、@Service、@Controller、@ComponentScan是Spring注解所以@ComponentScan只能掃描@Component、@Repository、@Service、@Controller
@Mapper、@MapperScan是Mybatis注解所以@MapperScan只能掃描@Mapper

所以要是在Mapper層要是使用了@Mapper注解,那么SpringBoot的@ComponentScan是掃描不到的,必須在啟動類上面加上@MapperScan掃描。

五、SpringBoot默認配置文件
當(dāng)我們構(gòu)建完Spring Boot項目后,會在resources目錄下給我們一個默認的全局配置文件 application.properties,這是一個空文件,因為Spring Boot在底層已經(jīng)把配置都給我們自動配置好了,當(dāng)在配置文件進行配置時,會修改SpringBoot自動配置的默認值。
配置文件名是固定的
application.properties
但我們可以修改為
application.yml
這兩個文件本質(zhì)是一樣的,區(qū)別只是其中的語法略微不同。
到此這篇關(guān)于SpringBoot默認包掃描機制與默認配置文件詳解的文章就介紹到這了,更多相關(guān)SpringBoot默認包掃描與默認配置文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Jenkins 實現(xiàn)Gitlab事件自動觸發(fā)Jenkins構(gòu)建及釘釘消息推送
這篇文章主要介紹了Jenkins 實現(xiàn)Gitlab事件自動觸發(fā)Jenkins構(gòu)建及釘釘消息推送,應(yīng)該會對大家學(xué)習(xí)Jenkins有所啟發(fā)2021-04-04
解析Spring RestTemplate必須搭配MultiValueMap的理由
本文給大家介紹Spring RestTemplate必須搭配MultiValueMap的理由,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,需要的朋友參考下吧2021-11-11
Java實現(xiàn)郵箱發(fā)送功能實例(阿里云郵箱推送)
這篇文章主要給大家介紹了關(guān)于Java實現(xiàn)郵箱發(fā)送功能的相關(guān)資料,利用阿里云郵箱推送,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
Spring Boot 中PageHelper 插件使用配置思路詳解
這篇文章主要介紹了Spring Boot 中PageHelper 插件使用配置及實現(xiàn)思路,通過引入myabtis和pagehelper依賴,在yml中配置mybatis掃描和實體類,具體實現(xiàn)方法跟隨小編一起看看吧2021-08-08
SpringMVC?RESTFul實戰(zhàn)案例訪問首頁
這篇文章主要為大家介紹了SpringMVC?RESTFul實戰(zhàn)案例訪問首頁,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
Java 詳解循環(huán)屏障CyclicBarrier如何實現(xiàn)多線程分段等待執(zhí)行完成
CyclicBarrier是一個同步工具類,可以翻譯成循環(huán)屏障,也叫障礙器或同步屏障。CyclicBarrier內(nèi)部有一個計數(shù)器count,調(diào)用障礙器的await方法會使計數(shù)器count的值減一,當(dāng)計數(shù)器count的值為0時,表明調(diào)用了await方法線程已經(jīng)達到了設(shè)置的數(shù)量2021-11-11

