There is a cycle in the hierarchy


        今天用JSONObject写Android端和服务器传输Json数据,遇到异常“There is a cycle in the hierarchy”。意思是出现了死循环。大部分都是Model之间有循环包含关系。所以大部分可以通过下面的设置解决:

       JsonConfig jsonConfig = new JsonConfig();  
       jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);  
  
       JSONObject json = JSONObject.fromObject(object, jsonConfig); 

        我看别人的博客大部分都是这样,但我使用使用JSONObject的时候,并没有使用JSONObject.fromObject方法,结构很简单,不知道哪里有循环包含关系,我的用法:

        JSONObject json = new JSONObject();

             json.put(“file”,file);

        就第二行抛出异常,感觉有点怪。json.put一个键值对,第一个String参数,第二个Object类型,把一个文件对象做键值,按理应该没有什么问题,可偏偏这行抛异常。看其他文章分析,可能是file对象具有多个属性,造成的循环。

你可能感兴趣的:(Json,Java)