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;

三、修复效果展示(略)

相关推荐
麦克马6 小时前
MyBatis中字符串比较的类型解析问题与解决方案
mybatis
进击的CJR10 小时前
redis cluster 部署
java·redis·mybatis
sunddy_x17 小时前
Spring事务
java·spring·mybatis
阿杰 AJie18 小时前
MyBatis-Plus 的内置方法
java·数据库·mybatis
橘橙黄又青18 小时前
MyBatis篇
数据库·oracle·mybatis
一直都在57218 小时前
Spring3整合MyBatis实现增删改查操作
前端·vue.js·mybatis
迪霸戈18 小时前
MyBatis动态SQL避坑:为什么List用`[0]`而不是`get(0)`
sql·list·mybatis
不凡而大米、19 小时前
报错:传入的请求具有过多的参数。该服务器支持最多2100个参数
java·开发语言·mybatis
BD_Marathon19 小时前
MyBatis的一级缓存
spring·缓存·mybatis
啊吧怪不啊吧19 小时前
极致性能的服务器Redis之Hash类型及相关指令介绍
大数据·数据库·redis·sql·mybatis·哈希算法