java stackoverflow原因,java stackoverflowerror解决

  java stackoverflow原因,java stackoverflowerror解决

  

目录

java操作json对象有StackOverflow错误。解决方法:记录一次json转换对象的异常。

 

  

java操作json对象出现StackOverflow错误

今天在做一个项目的时候,遇到了一个很诡异的问题。一个java实体类中有多个属性,每个属性都是JsonObject类型。

 

  当在程序中使用setXXX方法设置这些属性的值时,会报告堆栈溢出错误。仔细检查程序,确保没有循环引用和死递归。最后查阅相关资料,终于发现我用的JsonObject是net.sf.json包下的一个类。

  这个类库中的Json对象可能在多个对象之间有交叉引用,导致程序最终报告堆栈溢出错误。

  

解决方法

将成员属性的类型设置为字符串String,以避免上述情况。或者用fastjson来处理。fastjson在处理json对象时不会发生。

 

  

记录一次json转换对象的异常

 

  今天写代码的时候遇到了这样的问题。当将Java对象转换成JOSN字符串时,出现了重复的字段“OPEN”和“TIMESTAMP”。

  这是Java目标代码。

  实验表明,只有这两个字段是重复的,有可能猜测这个字段是特殊别名。

  对实例类进行以下更改

  成功修复

  以上个人经验,希望能给大家一个参考,也希望大家能支持盛行的IT。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: