情况

在写项目初始时,刚写完登录,准备运行看看,遇到了这个报错Field userMapper in com.xxx.back.service.impl.UserServiceImpl required a bean of type ‘com.xxx.back.dao.UserMapper’ that could not be found.
在这里插入图片描述

排查

大概可能有如下情况:

  1. application.yaml中没有配置mapper路径

  2. 没有让springboot扫描到mapper

解决方法

第一种情况:

在yml中配置如下:

mybatis-plus:     //用的mybatis就改为mybatis
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl  #??SQL??  开启数据库日志打印
  mapper-locations: classpath:com/xxx/back/dao/xml/*.xml   #??mapper.xml     

mapper-location: 用于配置mapper路径 路径位置要对应到mapper的xml文件
在这里插入图片描述
本项目中该文件位置,情况视具体而定:
在这里插入图片描述
最开始写的时候还忘了给UserMapper配置这个文件,内容如下、

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xxx.back.dao.UserMapper">

</mapper>

在这里插入图片描述

第二种情况

选择一:在UserMapper上加上@Mapper注解
在这里插入图片描述
选择二:在启动类添加MapperScan注解
在这里插入图片描述

总结

纯属技术菜+不熟练+粗心大意

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐