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;

三、修复效果展示(略)

相关推荐
sin22014 小时前
MyBatis-Plus的插件
java·mybatis
一个处女座的暖男程序猿7 小时前
MyBatis Plus 中常用的 Service 功能
linux·windows·mybatis
endcy20167 小时前
IoTDB结合Mybatis使用示例(增删查改自定义sql等)
java·mybatis·iotdb
enjoy嚣士11 小时前
mybatis-plus之使用lombok的@Builder注解之后的坑
mybatis·lombok
小高不明11 小时前
仿 RabbitMQ 的消息队列3(实战项目)
java·开发语言·spring·rabbitmq·mybatis
沉默的煎蛋12 小时前
MyBatis 注解开发详解
java·数据库·mysql·算法·mybatis
呼啦啦啦啦啦啦啦啦16 小时前
【Redis】持久化机制
java·redis·mybatis
苏-言1 天前
MyBatis最佳实践:动态 SQL
数据库·sql·mybatis
苏-言2 天前
MyBatis最佳实践:提升数据库交互效率的秘密武器
数据库·mybatis
一缕叶2 天前
mybatis(19/134)
mybatis