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;

三、修复效果展示(略)

相关推荐
小马爱打代码9 小时前
MyBatis:性能优化实战 - 从 SQL 优化到索引设计
sql·性能优化·mybatis
烤麻辣烫12 小时前
黑马程序员苍穹外卖(新手)Day1
java·数据库·spring boot·学习·mybatis
IT小哥哥呀17 小时前
MyBatis 性能优化指南:Mapper 映射、缓存与批量操作实战
缓存·性能优化·mybatis·数据库优化·批量插入·分布式系统·sql性能
是烟花哈18 小时前
后端开发CRUD实现
java·开发语言·spring boot·mybatis
半部论语19 小时前
MyBatis-Plus 通用 CRUD 实现原理技术文档
java·spring boot·mybatis
云半S一21 小时前
春招准备之MyBatis框架篇
经验分享·笔记·mybatis
你不是我我21 小时前
【Java 开发日记】我们来说一下 Mybatis 的缓存机制
java·spring·mybatis
小松の博客1 天前
Mybatis 注解开发
java·tomcat·mybatis
杰克尼1 天前
Springcloud_day01
spring boot·spring·mybatis
不平衡的叉叉树1 天前
Mybatis常用动态SQL标签
java·mybatis