springboot学习中关于@ComponentScan及 @MapperScan的一些总结

主程序加 @componentScan + dao层加@Mapper 访问不到

主程序加@componentScan + dao层加@Component 或者
@ Component(“userDao”)访问不到

主程序加@componentScan + dao层加@Repository 或者@Repository(“userDao”) 访问不到

主程序加上 @MapperScan(“com.jay.dao”) + dao层加@Mapper 访问 到

主程序加上 @MapperScan(“com.jay.dao”) + dao层加@Component 访问 到

主程序加上 @MapperScan(“com.jay.dao”) + dao层加@Repository 或者 @ **Repository(“userDao")**访问到

总结 在主程序只加@MapperScan(“com.jay.dao”) 即可 自动扫描到dao层 并注入
在这里插入图片描述

但是不在dao层加 @Mapper 或 @Component 或 @Repository 就在主程序看不到以及注册了 (虽然springboot隐式扫描并注入了)
图:

因此推荐在Dao层加上 @Mapper 或 @Repository

由此并引发一个问题:
@MapperScan和@ComponentScan的区别

spring的@MapperScan和@ComponentScan的区别

Spring Boot常用注解简单整理(包括:@ComponentScan、@MapperScan、@Controller、@RequestMapping、@Autowired、@Repositor等

Maven 删除没有用到的依赖项

java.lang.NoSuchMethodError: org.springframework.core.ResolvableType.forInstance 错误解决

个人认为是 看注解名字 @ComponentScan它确实是扫描到了 但是只是知道他是个一Component但并不知道它在web项目中起dao层的作用
而@MapperScan的话 看名字 就觉得他是按照scan Mapper层的方式 不仅扫描到了 而且注入成功为dao层
欢迎讨论。。。

发布了81 篇原创文章 · 获赞 19 · 访问量 3629

猜你喜欢

转载自blog.csdn.net/c22cxz/article/details/104314175