10. Mybatis-plus JSON处理器
2025-08-27 本文已影响0人
右耳菌
假设数据库的user表中有一个info字段,是JSON类型:
数据库表
格式像这样:
{"age": 20, "intro": "佛系青年", "gender": "male"}
而目前User实体类中却是String类型:
info字段
这样一来,我们要读取info中的属性时就非常不方便。如果要方便获取,info的类型最好是一个Map或者实体类。
而一旦我们把info改为对象类型,就需要在写入数据库时手动转为String,再读取数据库时,手动转换为对象,这会非常麻烦。
因此MybatisPlus提供了很多特殊类型字段的类型处理器,解决特殊字段类型与数据库类型转换的问题。例如处理JSON就可以使用JacksonTypeHandler处理器。
下面是例子:
1. 定义实体
我们定义一个单独实体类来与info字段的属性匹配
import lombok.Data;
@Data
public class UserInfo {
private Integer age;
private String intro;
private String gender;
}
2. 使用类型处理器
将User类的info字段修改为UserInfo类型,并声明类型处理器
同时,在User类上添加一个注解,声明自动映射
同时,为了让页面返回的结果也以对象格式返回,我们要修改UserVO中的info字段
如果觉得有收获,欢迎点赞和评论,更多知识,请点击关注查看我的主页信息哦~