第一次遇到这个错误,那时候刚接触JSONArray、JSONObject、JsonConfig。
百度解决方法,只知道使用JsonConfig将实体类中的关联实体过滤掉就行了,只是暂时解决了这个错误,深层的东西并不知道。
这次又遇到这个错误,实体类中有两个关联实体,发现有一个关联实体必须使用JsonConfig过滤掉,否则的话就报错。而另一个不过滤掉,也不会报错。
仔细查看后:
我正在使用的实体类关联了A和E。
必须过滤掉的这个关联实体A---A关联了B---B关联了C---C关联D---D又关联了C,将D中关联的C注释掉后发现,就算不用JsonConfig过滤掉A也不会报错了。
而不必过滤掉的这个实体E相比较A就比较简单了,没有出现相互关联的情况。
========================================================================================
解决问题的时候,http://www.blogjava.net/peiliangye/articles/372062.html 这篇文章的帮助很大,谢谢作者的分享!
虽然说如果没有相互关联的时候,不使用JsonConfig过滤也不会出错,但是如果关联关系比较复杂的时候,返回的JSONArray太复杂了,会返回好多我们也许用不到的,
还是过滤掉比较好,如果需要关联实体的属性,可以通过在实体类中添加如下代码来取。
private String goods_name;
@Transient
public String getGoods_name() {
if (goods_id != null) {
return goods_id.getGoodsName();
}
return "";
}
public void setGoods_name(String goods_name) {
this.goods_name = goods_name;
}