码迷,mamicode.com
首页 > Web开发 > 详细

json:There is a cycle in the hierarchy!

时间:2015-07-22 18:11:32      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

在使用JSONObject.fromObject的时候,出现“There is a cycle in the hierarchy”异常。

意思是出现了死循环,也就是Model之间有循环包含关系;

解决办法:

使用setCycleDetectionStrategy防止自包含

代码:

JsonConfig jsonConfig = new JsonConfig();

jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);

JSONObject json =JSONObject.fromObject(model, jsonConfig);

result = json.toString();

 

依赖的包: 

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.util.CycleDetectionStrategy;

 

完整实列

/** 
    * 这里测试如果含有自包含的时候需要CycleDetectionStrategy 
    */  
   public static void testCycleObject() {  
       CycleObject object = new CycleObject();  
       object.setMemberId("yajuntest");  
       object.setSex("male");  
       JsonConfig jsonConfig = new JsonConfig();  
       jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);  
  
       JSONObject json = JSONObject.fromObject(object, jsonConfig);  
       System.out.println(json);  
   }  
  
   public static void main(String[] args) {  
              JsonTest.testCycleObject();  
   }  

其中 CycleObject.java

public class CycleObject {  
  
    private String      memberId;  
    private String      sex;  
    private CycleObject me = this;  
…… // getters && setters  
} 

 

json:There is a cycle in the hierarchy!

标签:

原文地址:http://www.cnblogs.com/hwaggLee/p/4667832.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!