Mybatis plus 中数据库中字段有SQL关键字的处理方法
最近碰到一个问题,mysql的数据表中有一个字段desc,如果使用mybatis plus来访问数据库,使用继承BaseMapper<>的方法。自己如果不书写xml,自动构成的sql会出错。
解决方法
@TableField("`desc`")
private String desc;
@TableField(exist = false)//自定义
@TableId(value = "id", type = IdType.AUTO) //id
@TableName(value = "user_wei_guang_tong")//表明
mybatisplus where语句里面的条件用括号括起来
SQL:SELECT * FROM User where xl=‘1’ and (Zt = ‘待审核’ or Zt = ‘已驳回’) and xh=‘2’
需要用mybatisplus实现:
User user = new User().selectOne(new QueryWrapper<User>().eq("xl", xl)
.and(wrapper -> wrapper.eq("Zt", "待审核").or().eq("Zt", "已驳回"))
.eq("xh",user.getXh()));