mybatis-plus 表字段存在关键字的处理办法

一、问题复现

当数据库表中字段出现关键字时,若不做其他处理,mybatis-plus的BaseMapper并不会做其他的处理,最终导致SQL执行时,抛出SQL 语法错误。示例如下:

  • Java查询语句
java 复制代码
 QueryWrapper<User> userQuery = new QueryWrapper<>();
 userQuery.lambda().isNull(User::getDeletedAt)
         .like(User::getCnName, keyword);
 List<User> users = userMapper.selectList(userQuery);
  • 异常信息
java 复制代码
Error querying database. 
 Cause: java.sql.SQLSyntaxErrorException: 
 You have an error in your SQL syntax; 
 check the manual that corresponds to your MySQL server version 
 for the right syntax to use near 'key,remarks

二、处理办法

应用mybatis-plus提供的注解--TableField,就可以很方便的解决此问题。示例如下:

注意:需要在value值里,特别的加上字段''号

java 复制代码
    @TableField(value = "`key`")
    private String key;

三、修复效果展示(略)

相关推荐
期待のcode5 小时前
MyBatis-Plus通用Service
java·后端·mybatis·springboot
无名小卒~≯7 小时前
mybatis重复查询导致内存地址相同bug
bug·mybatis
小二·7 小时前
MyBatis入门:环境搭建
mybatis
小小哭包8 小时前
Spring+MyBatis实现数据库读写分离方案
数据库·spring·mybatis
小二·12 小时前
MyBatis 查询数据库返回集合的三种接收方式(附工具类封装)
mybatis
SadSunset13 小时前
(16)MyBatis执行流程分析(偏上层架构)
java·架构·mybatis
张较瘦_13 小时前
Springboot3 | MyBatis-Plus 多表查询极简实践:宠物管理系统场景落地
java·mybatis·宠物
小二·13 小时前
MyBatis基础入门《七》ResultMap 高级映射:一对一 & 一对多关联查询
mybatis
qq_589568101 天前
mybatis-plus和springboot项目错误记录
spring boot·后端·mybatis
会编程的林俊杰1 天前
Mapper解析
java·mybatis