MybatisPlus為何可以不用@MapperScan詳解
為什么在使用mybatis-plus沒有在啟動(dòng)類加@MapperScan也可以掃描mapper生成代理


springboot 在引入了 mybatis-plus-boot-starter ,在這個(gè)啟動(dòng)包的spring.factories 文件里面的 MybatisPlusAutoConfiguration
在springboot 啟動(dòng)的時(shí)候會(huì)被spring掃描到

MybatisPlusAutoConfiguration 是一個(gè)配置類,里面的內(nèi)部類 MapperScannerRegistrarNotFoundConfiguration 通過@Import 導(dǎo)入了類 AutoConfiguredMapperScannerRegistrar 這個(gè)類 實(shí)現(xiàn)了ImportBeanDefinitionRegistrar 接口
在spring 啟動(dòng)的時(shí)候會(huì)調(diào)用 registerBeanDefinitions 方法 里面會(huì)往spring里面注冊(cè)MapperScannerConfigurer 這個(gè)bean,這個(gè)是mybatis整合spring,掃描mapper的具體實(shí)現(xiàn)

這里可以看出來mybatisPlus默認(rèn)只掃描@Mapper注解。掃描的包來自AutoConfigurationPackages.get(this.beanFactory);


這里可以看出掃描的包來自AutoConfigurationPackages.BasePackages 里面 , 然后看上面的圖發(fā)下 這個(gè)包 好像跟@EnableAutoConfiguration 注解有關(guān)系。


@AutoConfigurationPackage 又通過 @Import 導(dǎo)入了 Registrar 類

然后在spring啟動(dòng)的時(shí)候就會(huì)走道這里

可以看出在@AutoConfigurationPackage 注解沒有配置包名的時(shí)候,packageNames 的值就是注解所在類的包名
然后 AutoConfigurationPackages.register

這里會(huì)把掃描的包名,通過構(gòu)造方法設(shè)置進(jìn)去,并且在沒有加入spring的情況下加入spring。
到這里就找到的mybatis 在沒有配置MapperScan時(shí) 掃描的包名了。
總結(jié)
到此這篇關(guān)于MybatisPlus為何可以不用@MapperScan的文章就介紹到這了,更多相關(guān)MybatisPlus不用@MapperScan內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中JUC包(java.util.concurrent)下的常用子類
相信大家已經(jīng)對(duì)并發(fā)機(jī)制中出現(xiàn)的很多的常見知識(shí)點(diǎn)進(jìn)行了總結(jié),下面這篇文章主要給大家介紹了關(guān)于Java中JUC包(java.util.concurrent)下的常用子類的相關(guān)資料,文中通過圖文以及示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
關(guān)于@EnableGlobalMethodSecurity注解的用法解讀
這篇文章主要介紹了關(guān)于@EnableGlobalMethodSecurity注解的用法解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
Spring中的FactoryBean與BeanFactory詳細(xì)解析
這篇文章主要介紹了Spring中的FactoryBean與BeanFactory詳細(xì)解析,在Spring框架中,FactoryBean和BeanFactory是兩個(gè)關(guān)鍵的接口,用于創(chuàng)建和管理對(duì)象實(shí)例,它們?cè)赟pring的IoC(Inversion of Control,控制反轉(zhuǎn))容器中發(fā)揮著重要的作用,需要的朋友可以參考下2023-11-11
如何使用stream從List對(duì)象中獲取某列數(shù)據(jù)
這篇文章主要介紹了如何使用stream從List對(duì)象中獲取某列數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12

