如若数据间存在级联关系,在hibernate中极简单嵌套而抛出net.sf.json.JSONException: There is a cycle in the hierarchy异常。
解决办法是给json指定过滤器。如:
JsonConfig config = new JsonConfig();
config.setJsonPropertyFilter(new PropertyFilter(){
public boolean apply(Object source, String name, Object value){
if (name.equals("goodsType") || name.equals("goodsGroup")){
return true;
}
return false;
}
});
JSONArray jsonForGoodsTypes = JSONArray.fromObject(goodsTypes,config);
这将过滤掉goodsType和goodsGroup两个属性,避免了嵌套。
现时更好的解决办法(推荐):
JsonConfig config = new JsonConfig();
config.setExcludes( new String[]{ "execludeField" , "fromPage" } ) ;
把不需要的字段放到这个数组中就可以了!
JSONObject jobj一=JSONObject.fromObject(orderLevel,jsconfig
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception
- 1855 - java.lang.ClassCastException: java.util.HashSet
- 1856 - RuntimeException和非RuntimeException的区别
- 1857 - java.lang.IllegalArgumentException: Document base
- 1858 - java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Connection reset by peer: socket write error
- 1859 - java.sql.SQLException: Unable to connect to any hosts due to exception: java.net.ConnectException: Connection refused: connect
- 1860 - java.lang.ClassCastException: javax.naming.Reference
- 1861 - throws Exception和try catch的区别
- 1862 - jasperreport输出pdf文件页面显示
- 1863 - OpenFileDialog的ShowDialog方法报错
- 1864 - 空指针异常如何不让系统停止运行
- 1865 - 捕捉到错误后怎么不出提示
- 1866 - 1.1 500 Internet Server Error
- 1867 - javax.servlet.jsp.JspException: No selector attribute
- 1868 - 编译器错误信息: CS0117: string并不包含myConnection的定义
- 1869 - The procedure entry point LockClrVersion could not be located in the dynamic link library mscoree.dll
- 1870 - DataTable.Select时遇到星号时出错
- 1871 - 根级别上的数据无效
- 1872 - System.Net.Sockets.SocketException: 由于套接字没有连接
- 1873 - 在建立与服务器的连接时出错
- 1874 - an internal DNS Error