在JsonArray fromObject 时 报了如下错误:
net.sf.json.JSONException: There is a cycle in the
后来在查找代码中,发现POJO中增加了取子节点操作存储到List过程,嵌套了循环的过程,这是JSON在解析的时候遇到了死循环导致的问题。导致死循环的原因那:一般是我的实体POJO里面寻在关联关系!
JsonConfig config = new JsonConfig();
config.setJsonPropertyFilter(new PropertyFilter() {
@Override
public boolean apply(Object arg0, String arg1, Object arg2) {
if (arg1.equals("childs") || arg1.equals("parent")) {
return true;
} else {
return false;
}
}
});
JSONArray jsonObject = JSONArray.fromObject(areaList,config);
通过如上方法,进行判断,使JSON在解析的时候不会出现死循环,其中 childs 和 parent为POJO中的子节点和父节点