springboot项目mapper无法自动装配未找到 UserMapper 类型的Bean解决办法
mapper无法自动装配,未找到 ‘userMapper‘ 类型的 Bean报错

解决办法
报错原因:因为@Mapper是属于mybatis,不需要在spring配置中设置扫描地址,通过mapper.xml里面的namespace属性对应相关的mapper类,spring将动态的生成Bean后注入到ServiceImpl中。
看了很多同学们的在设置改掉springbean自动装配的办法,但是仍报错。可以选择在mapper interface上面,添加@Repository注解:

效果

@Mapper与@Repository的详细区别
@Mapper与@Repository的相同点
两个注解都可在dao/mapper层使用(用来标记持久层),生成相应代理对象bean注入到spring容器中。
@Mapper与@Repository的不同点
@Mapper是mybatis的注解,可以单独使用,也允许存在在多个mapper文件,它不需要在Spring中配置扫描地址,通过xml里面的namespace里面的接口地址,生成Bean后注入到Service层中。
@Repository是spring提供的注解,能够将该类注册成Bean。被依赖注入,但是使用该注解后,在启动类上要加@MapperScan来表名Mapper类的位置,否则扫描不到。但在idea中,使用@Repository可以消除在业务层中注入mapper对象时的错误。
以上就是springboot项目mapper无法自动装配以及未找到 userMapper 类型的Bean解决办法的详细内容,更多关于springboot mapper无法自动装配的资料请关注脚本之家其它相关文章!
相关文章
Spring基于ProxyFactoryBean创建AOP代理
这篇文章主要介绍了Spring基于ProxyFactoryBean创建AOP代理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-10-10
java~springboot~ibatis数组in查询的实现方法
这篇文章主要介绍了java~springboot~ibatis数组in查询的实现方法,需要的朋友可以参考下2018-09-09
SpringBoot2.x 整合 AntiSamy防御XSS攻击的简单总结
本文主要对SpringBoot2.x集成AntiSamy防御XSS攻击进行简单总结,其中SpringBoot使用的2.4.5版本,通过示例代码给大家介绍的非常详细,需要的朋友参考下吧2021-08-08


最新评论