原有项目中有一个JSON结构的数据存储方案:就是对JSON结构数据转成MAP类型然后进行遍历,一个key-value在数据库表中占据一行。如果value为List(元素为Map类型)继续遍历后按照key-value存储,key对应一个字段,value对应一个字段。value为list的还增加一个顺序号、lsitKey字段。
例如:{“name”:“zzl”,“age”:“28”,“favrects”:[{“a”:“aaa”,“b”:“bbb”},{“a”:“aaa”,“b”:“bbb”},{“a”:“aaa”,“b”:“bbb”}]}
输出时也是按照sx字段的值以及top的值进行一一对应封装转成json结构输出,
现在有新的需求加入:
{“name”:“zzl”,“age”:“28”,“favrects”:[{“a”:“aaa”,“b”:“bbb”,“cc”:[{“ee”:“eeee”,“ff”:“ffff”}]},{“a”:“aaa”,“b”:“bbb”,“cc”:[{“ee”:“eeee”,“ff”:“ffff”}},{“a”:“aaa”,“b”:“bbb”,“cc”:[{“ee”:“eeee”,“ff”:“ffff”}}]}
如上在list中的元素中又出现list了,怎么有效的进行存入和输出,不能影响原有业务逻辑存入采取原来的增加进一步判断list元素的value为list再次进行遍历入库,但是输出怎么做到list的一一准确对应???
求大神指教?
因为以前采取额是把list中的那个list转成string类型,但是后来由于string过长造成值超过数据库定义长度。
这种不好处理的数据我们直接丢在oss的,然后数据库存储 oss key