SpringBoot+MyBatisPlus整合时提示:Invalid bound statement(not found):**.dao.UserDao.queryById

场景

在使用SpringBoot+MyBatisPlus搭建后台启动项目时,使用EasyCode自动生成代码。

在访问后台接口时提示:

Invilid bound statement (not found):**.dao.UserDao.queryById

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

首先第一步是会想到dao层的注入有问题。

在使用EasyCode生成代码后,默认生成代码模板中是没有添加@Mapper注解或者在启动类中添加@MapperScan注解。

二者选其一,这里在启动类上添加mapper层扫描注解。

如果在添加后仍然不起作用,在运行项目时不报错,但是在进行后台接口请求时还是提示以上问题。

那么此时应该就是配置文件有问题了。

找到配置文件application.yml

添加mapper配置文件扫描的配置

  mapper-locations: classpath:mapper/*Dao.xml

添加位置参照以下代码

server:
  port: 8088
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/usr
    username: root
    password: 123
mybatis-plus:
  #信息输出设置
  # xml地址
  mapper-locations: classpath:mapper/*Dao.xml
  # 实体扫描,多个package用逗号或者分号分隔
  # type-aliases-package: ***   #自己的实体类地址
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
原文地址:https://www.cnblogs.com/badaoliumangqizhi/p/11930749.html