通用mybatis使用时报错误如下:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘guaranteeApplyInfoController’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘guaranteeApplyInfoServiceImpl’: Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type ‘com.hti.guarantee.base.service.Mapper<?>’ available: expected single matching bean but found 4: guaranteeApplyFileMapper,guaranteeApplyInfoMapper,guaranteeApplyParamMapper,cooperatorSystemInfoMapper
报错类部分代码:
很明显错误出在@Resource 注解上 容器启动时不知道注入哪个bean
然后我检查了一遍 mapper配置 以及mapper包的扫描等 结果发现都没有问题
也上网 查阅了一些资料 大家可以参考下:
https://www.cnblogs.com/icebutterfly/p/9851853.html (我检测没有问题)
https://www.cnblogs.com/libin6505/p/8378735.html (我试了下,没有效果)
解决问题思路:
上面的错误是 只需要注入一个bean,但是却找到4个,也就是说没有找到正确的bean,通用mapper接口有四个实现类,那么如何正确的找到需要的实现类呢?很明显是通过实体类:
那是不是代表实体有问题:然后我去检查实体类,果然发现缺少了 注解 @Entity 加上注解 ok 问题解决
呦呦切克闹!听说粗心大意 是程序员的必备品质