springboot集成mybatis处理json类型数据
今天做了一个需求,需要将一个字段定义为json类型,加以记录
- 使用的mysql数据库,在数据库中新建一个表,parameter字段为json类型
CREATE TABLE `sms_template` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
`template_name` varchar(30) NOT NULL COMMENT '模板名称',
`template_code` varchar(20) DEFAULT NULL COMMENT '模板编号',
`sign_name` varchar(16) DEFAULT NULL COMMENT '短信签名',
`template_content` varchar(100) DEFAULT NULL COMMENT '短信模板内容',
`parameter` json DEFAULT NULL COMMENT '变量参数',
`del_flag` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标识 0:未删除 1:删除',
`operator_code` varchar(11) DEFAULT NULL,
`operator_name` varchar(10) NOT NULL COMMENT '创建人名称',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='短信模板表';
- mybatis处理json配置类
@MappedTypes(JSONObject.class)
@MappedJdbcTypes(JdbcType.VARCHAR)
public class MySqlJsonHandler