欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

解决SpringBoot整合Mybatis扫描不到Mapper的问题

时间:2021-07-28 07:43:23|栏目:JAVA代码|点击:

闲来无事,想学学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;  

上一篇:快速了解hibernate配置文件与映射文件

栏    目:JAVA代码

下一篇:Java线程安全问题小结_动力节点Java学院整理

本文标题:解决SpringBoot整合Mybatis扫描不到Mapper的问题

本文地址:http://www.codeinn.net/misctech/162179.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有