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;

三、修复效果展示(略)

相关推荐
wuqingshun3141591 天前
说说mybatis的缓存机制
java·缓存·mybatis
java1234_小锋2 天前
说说MyBatis的工作原理吗?
java·mybatis
是宇写的啊2 天前
MyBaties
java·开发语言·mybatis
那个失眠的夜2 天前
RESTful 语法规范 核心注解详解
java·spring·mvc·mybatis
他是龙5512 天前
66:Java安全&SPEL表达式&SSTI模版注入&XXE&JDBC&MyBatis注入
java·安全·mybatis
MegaDataFlowers2 天前
MybatisPlus入门案例
mybatis
cheems95273 天前
[Mybatis] #{ } 与 ${ } 的底层博弈与工程实践
mybatis
2601_949817723 天前
Spring Boot3.3.X整合Mybatis-Plus
spring boot·后端·mybatis
LaLaLa_OvO3 天前
mybatis 引用静态常量
java·mybatis
yaodong5183 天前
Spring 中使用Mybatis,超详细
spring·tomcat·mybatis