一、前言
今天遇到了一个bug,大概就是数据库(Mysql)中有一个type
类型字段,数据类型为json,大概是这样的:[“张三”,“李四”,“王五”]的数据格式,这个bug的问题所在呢就是查询后这个json格式的数据无法映射到我们实体类的属性上,解决方案如下:
二、解决
- 在数据库表定义JSON字段;
- 在实体类加上@TableName(autoResultMap = true)、在JSON字段映射的属性加@TableField(typeHandler=JacksonTypeHandler.class);
三、代码实现
1.实体类中有个属性是List集合;在数据库中存储时使用的是mysql的json格式,此时可以用mybatis plus的一个注解@TableField(typeHandler = JacksonTypeHandler.class)
2、在实体类中加上@TableName(value = "demo", autoResultMap = true)
value="demo", autoResultMap=true) (publicclassDemoextendsBaseEntity { "账号") (privateStringuserName; "用户名") (privateStringnickName; "所属组织Id") (typeHandler=JacksonTypeHandler.class) (privateList<Integer>orgIds;