这篇文章主要介绍了java操作json对象出现StackOverflow错误的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
java操作json对象出现StackOverflow错误
今天在做项目的时候,遇到一个非常怪异的问题。一个java实体类中存在多个属性,每一个属性都是JsonObject类型。
在程序中用setXXX方法对这些属性设置值的时候,竟然报了Stack Overflow的错误。仔细检查了一遍程序,确定没有循环引用和死递归的发生。最后经过和查阅相关资料,终于发现我用的JsonObject是net.sf.json包下的类。
在这个类库中的json对象可能会存在多个对象之间的相互引用,导致程序最终报出了Stack Overflow的错误。
解决方法
将成员属性的类型设置为String字符串,避免出现上面的情况。或者使用fastjson来处理,fastjson在处理json对象的时候不会出现上面说的情况。
记录一次json转换对象的异常

今天在写代码时碰到了这样一个问题,将Java对象转换为JOSN字符串时,出现了重复的字段“OPEN”和“TIMESTAMP”

这是Java对象代码

经实验发现只有这两个字段会出现重复情况,猜测可能时由于该字段是特殊别名
对实例类做如下改动

成功修复

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程学习网。
本文标题为:java操作json对象出现StackOverflow错误的问题及解决
				
        
 
            
        基础教程推荐
- 是否适合从javabean类更新数据库? 2023-11-04
 - 运用El表达式截取字符串/获取list的长度实例 2023-08-01
 - Java+mysql实现学籍管理系统 2023-03-16
 - Java编写实现窗体程序显示日历 2023-01-02
 - 使用Java和WebSocket实现网页聊天室实例代码 2024-02-25
 - springboot下使用shiro自定义filter的个人经验分享 2024-02-27
 - JavaWeb 实现验证码功能(demo) 2024-04-14
 - Java中EnvironmentAware 接口的作用 2023-01-23
 - JSP 动态树的实现 2023-12-17
 - 深入理解约瑟夫环的数学优化方法 2024-03-07
 
    	
    	
    	
    	
    	
    	
    	
    	
						
						
						
						
						
				
				
				
				