赞
踩
项目之前是采用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一下,查到了想要的结果.
本文转自 https://blog.csdn.net/m0_67393295/article/details/123988150,如有侵权,请联系删除。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。