时间:2021-05-19
闲来无事,想学学springboot,开始搭建一个项目,但是一直显示mapper扫描不到的错误:
“Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘userController': Unsatisfied dependency expressed through field ‘userMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.minibike.bike.user.dao.UserMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}”
“Field userMapper in com.minibike.bike.user.controller.UserController required a bean of type ‘com.minibike.bike.user.dao.UserMapper' that could not be found.”
于是在网上找解决方案,都是治标不治本,不得不说现在的博客质量下降的厉害,太误导人了,打开好多个都是一样的内容,难道没人遇到的错误一样,连包名和类名也一样吗?有的人抄别人博客,类名和包名都懒得换一下?
最后解决方案是在Application.java主类上加注解@MapperScan(“com.minibike.bike.user.dao”)。括号中引号里边是mapper所在包路径。
加上注解后不再报错,也能正常输出oooo
第一次接触springboot,昨天下午到今早一直没找到问题所在,后来查文档、注解,然后不断尝试,最后终于解决。
当然这个只是我个人项目开发中遇到的问题解决办法,不一定通用,但是如过遇到这样的问题,也可以一试。
补充知识:springboot 项目配置扫描mapper接口类的两种方法
一种是在启动类上加@MapperScan({"com.**.dao","com.**.dao.*"}) 扫描mapper接口文件所在的包,多个包的时候用英文半角逗号隔开;
一种是在mapper接口文件上加@Mapper注解。如下
import org.apache.ibatis.annotations.Mapper;
以上这篇解决SpringBoot整合Mybatis扫描不到Mapper的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
网上说是使用idea在SpringBoot整合Mybatis时候会扫描不到xml文件1.将xml文件放在resources下2.在application.pro
我就废话不多说了,大家还是直接看代码吧~补充知识:Springboot整合mybatis继承mapper接口,扩展自己的dao接口这里主要介绍Mybatis-G
SpringBoot整合mybatis分页操作SpringBoot整合Mybatis进行分页操作,这里需要使用Mybatis的分页插件:pageHelper,关
前言本篇文章主要讲述的是springboot整合mybatis、druid和pagehelper并实现多数据源和分页。其中springboot整合mybatis
两种防水都可以,但是使用方式不同。@mapper需要mybatis和mybatis-spring的版本足够的高才可以。不然导入不到@mapper。补充知识:关于