mysql+mybatis存储超大json

Posted ruanjianlaowang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql+mybatis存储超大json相关的知识,希望对你有一定的参考价值。

1. 场景描述

因前端界面需存储元素较多,切割后再组装存储的话比较麻烦,就采用大对象直接存储到mysql字段中,根据mysql的介绍可以存放65535个字节,算了算差不多,后来存的时候发现:

一是基本都中文,mysql用的utf-8存储,每个字符要占用3个字节,剩下就能存2万出头的样子(21845);

二是测试发现这个最大存储2万多字符,不仅仅是一个字段的长度,而是整条记录的所有字段加起来的长度,不够存。

2. 解决方案

2.1 方案说明

采用longtext类型进行存储。longtext也是变长字符存储,只保存字符数据,最长为4294967295字节

2.2 效果图

使用navicat修改字段类型

技术图片

2.3 mybatis设置

技术图片

2.4 说明

mybatis对longtext的操作稍微有点不一样,mybatis中操作需设置成LONGVARCHAR,但是对应实体类要设置成String,然后在java中就能像操作String类型一样操作了。


以上是关于mysql+mybatis存储超大json的主要内容,如果未能解决你的问题,请参考以下文章

解决"mysql-bin.000001"占用超大空间的问题

MyBatis调用MySQL存储过程

mybatis怎么调用mysql数据库的存储过程

mybatis 调用mysql存储过程 带输出输入参数

mybatis调用mysql存储过程返回多结果集(完整)

mybaties获取mysql存储的bolb字段 和展示