Mybatisplus实现JSON处理器的示例代码
作者:厂里英才
Mybatisplusjson是基于Mybatisplus开发的一个json工具库,本文主要介绍了Mybatisplus实现JSON处理器的示例代码,具有一定的参考价值,感兴趣的可以了解一下
1 前言
这是我最近学到的比较新奇的一个东西,数据库居然还可以存储JSON格式的数据,如下。虽然我感觉一般也没谁会这样干,但是既然有,那就当个科普讲一下Mybatis plus的JSON处理器。万一以后遇到了呢,就很离谱。
create table user( info json )
在数据库中形式如下:
{"age": xx, "gender": "xxx"}
2 使用方法
2.1 定义json实体类
@Data @NoArgsConstructor //表示该类的构造函数可以通过调用静态方法of()来创建对象。staticName属性指定了静态方法的名称。 @AllArgsConstructor(staticName = "of") public class UserInfo { private Integer age; private String gender; }
2.2 在实体类中使用
@TableName(autoResultMap = true) public class User { @TableField(typeHandler = JacksonTypeHandler.class) private UserInfo info; //其它代码... }
注解的解释:
@TableName(autoResultMap = true)
autoResultMap = true表示开启自动结果集映射功能。这意味着MyBatis-Plus会根据实体类的字段信息自动生成SQL查询结果到实体类对象的映射规则,无需手动编写 resultMap 映射配置。主要用于对象嵌套的情况。
@TableField(typeHandler = JacksonTypeHandler.class)
因为Mybatis并没有给我们提供数据库JSON和Java实体类相互转化的功能,所以我们需要使用MP给我们提供的注解来实现转化。其实一共有三种可选,如下,不过我们的SpringMVC默认包含Jackson,另外两种还得再引入依赖。
到此这篇关于Mybatisplus实现JSON处理器的示例代码的文章就介绍到这了,更多相关Mybatisplus JSON处理器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!