Mybatis-plus mysql json字段处理

项目之前是采用mybatis mapper.xml中拼写sql来查询字典值处理的,后期使用上了mybatis-plus,使用起来是方便了很多,但是发现前端字典值识别不到了,因此看了一下后端返回,字典类型居然都为空,于是查了一下资料,发现mybatisplus对于数据库json类型的字段需要在实体类中特殊处理,方式如下:

1.在实体类上标注:

@TableName(value ="tablename",autoResultMap = true)
public class DictData

属性含义
value : 表名
autoResultMap :是否自动构建 resultMap 并使用(如果设置 resultMap 则不会进行 resultMap 的自动构建并注入)(@since 3.1.2)

2.在对应实体的属性值上添加:

@TableField(typeHandler = JacksonTypeHandler.class)
private Map<String,String> dictLabelI18n;

该注解对应了XML 中的写法

<result column="xx" jdbcType="VARCHAR" property="实体属性名" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" />

debug一下,查到了想要的结果.
在这里插入图片描述

你可能感兴趣的:(java,Mybatis-plus,java)