mybais-plus出现Invalid bound statement (not found)的解决方案

11 篇文章 0 订阅
3 篇文章 0 订阅

今天笔者完善了一下自己写的项目,加上了数据库,之前都是靠着session来发电的。然后遇到了个问题,就是使用mybais-plus出现Invalid bound statement (not found)的bug。


一、笔者碰到这种问题的场景

1、使用spring boot集成mybatis-plus。
2、不加载mybatis-plus场景启动器,自动配置数据源。

二、如何解决这种问题

1、看看mapper.xml文件中是否存在自定义查询方法的sql语句。(这个错误其实经常出现,因为不小心打错字母o(╥﹏╥)o)

2、查询@MapperScan这个注解,看看项目启动类Applation中是否已经配置了这个注解,并且和自动配置的数据源扫包路径相冲突。

3、这一步是低级错误没犯的情况下,最可能出现的一个错误,笔者就是犯下的这个错误。自动配置数据源的情况下如果要使用mybatis-plus,就必须使用MybatisSqlSessionFactoryBean这个工厂对象来创建session工厂,不能选择默认的SqlSessionFactoryBean。SqlSessionFactoryBean只是一个接口,里面并没有具体的实现,需要自己写sql来对应方法,而MybatisSqlSessionFactoryBean中是做了一些不是太复杂的sql语句生成的,可以配合mybatis-plus中的一些方法使用。

顺便提一句:使用了自动配置数据源的方式后,需要将MybatisPlusAutoConfiguration这个配置类在Applation启动类中eclude掉,不然可能还是会使用原来的配置。当然eclude掉之后,你在配置文件中给mybatisPlus的配置也全部无效了,因为没有相关的属性配置类去读取了

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

缘丶沐逸尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值