爱打羽球的码猿 2021-07-22 01:53 采纳率: 66.7%
浏览 39
已采纳

初次使用mybatis-plus,,怎样才会出现如下问题?

使用的是mybatis-plus ,自动生成的SQL多出一个 表名.source = 'local' ,导致SQL语句错误,到底哪里出错会出现这类问题

img

测试程序如下:
img

实体类如下:

img

mapper类如下:
img

  • 写回答

2条回答 默认 最新

  • 墨渧 2021-07-22 09:03
    关注

    从你给出的代码来看,你使用的是某个框架,该框架对maybatis-plus的查询语句做了二次封装;当你创建的类继承Model父类时,在执行sql查询时会被mybatis-plus拦截器拦截,更改你的原始sql;以你提供的代码为例,该框架的拦截器会在原始sql后面增加and 表名.message=local。
    解决办法:
    1.绕开拦截器
    绕开拦截器的前提是此拦截器不是全局拦截器,实现类Message不继承父类Model
    2.在数据库表中加入父类Model中需要的字段

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 7月22日
  • 创建了问题 7月22日