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;

三、修复效果展示(略)

相关推荐
C+-C资深大佬11 小时前
SSM 框架(Spring + SpringMVC + MyBatis)
java·spring·mybatis
二王一个今15 小时前
springboot security 权限控制---循环依赖问题
mybatis
落木萧萧82521 小时前
为什么我把 MyBatisGX 设计成现在这样
mybatis·orm
代码旅人ing21 小时前
Redis+Spring+MyBatis + 微服务 + 消息队列核心知识点(面试高频题目合集)
redis·spring·mybatis·java-rabbitmq
Devin~Y21 小时前
大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 可观测性 + RAG/Agent(小Y翻车版)
java·spring boot·redis·spring cloud·kafka·kubernetes·mybatis
ppandss11 天前
JavaWeb从0到1-DAY11-MyBatis入门
java·tomcat·mybatis
JAVA面经实录9171 天前
MyBatis面试题库
java·mybatis
杨运交1 天前
[022][数据模块]基于雪花算法的 MyBatis-Plus 主键生成器设计与实现
mybatis
Mahir082 天前
MyBatis 深度解密:从执行流程到底层原理全解
java·后端·面试·mybatis
Mahir082 天前
MyBatis 分页与插件深度解密:从插件机制到三大分页方案原理全解
java·后端·mybatis·mybatis-plus·大厂面试题