在使用Fastjson中的 JSON.toJSONString时,如果对象数据太大(>64M)会出现Out Of Memory,查看源码发现为JSONWriter中的判断代码

其中maxArraySize默认最大为64M,如果超过了就会抛出oom错误

如果fastjson过多的使用内存,也可能导致java堆内存溢出,所以这里建议控制好json对象大小,避免过多过大对象做json操作。
使默认的JSON操作支持到大对象(LargeObject 1G)
也可以使默认的JSON操作支持到大对象(1G),只需要配置好默认上下文对象(context.features)使用方法:
JSON.config(LargeObject, true);
加入到静态代码块或者程序入口,初始化函数等。但是这里要注意如果fastjson过多的使用内存,也可能导致java堆内存溢出。
文章讨论了在Fastjson中处理大型对象(>64M)时可能出现的内存溢出问题,介绍了如何通过调整maxArraySize和配置context.features来支持大对象序列化,同时提醒要谨慎管理内存以防止Java堆溢出。
1642

被折叠的 条评论
为什么被折叠?



