json-lib出现There is a cycle in the hierarchy解决办法


Posted in Javascript onFebruary 24, 2010

解决办法

1.设置JSON-LIB让其过滤掉引起循环的字段。

Java代码

JsonConfig config = new JsonConfig(); 
config.setIgnoreDefaultExcludes(false); 
config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); 
config.registerJsonValueProcessor(Date.class,new DateJsonValueProcessor("yyyy-MM-dd")); //date processor register 
config.setExcludes(new String[]{//只要设置这个数组,指定过滤哪些字段。 
"consignee", 
"contract", 
"coalInfo", 
"coalType", 
"startStation", 
"balanceMan", 
"endStation" 
}); 
String tempStr = "{\"TotalRecords\":"+ total.toString() +",\"Datas\":"+JSONSerializer.toJSON(list,config).toString()+"}"; 
out.print(tempStr); 
JsonConfig config = new JsonConfig(); 
config.setIgnoreDefaultExcludes(false); 
config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); 
config.registerJsonValueProcessor(Date.class,new DateJsonValueProcessor("yyyy-MM-dd")); //date processor register 
config.setExcludes(new String[]{//只要设置这个数组,指定过滤哪些字段。 "consignee", "contract", "coalInfo", "coalType", "startStation", "balanceMan", "endStation" }); String tempStr = "{\"TotalRecords\":"+ total.toString() +",\"Datas\":"+JSONSerializer.toJSON(list,config).toString()+"}"; out.print(tempStr); 2.设置JSON-LIB的setCycleDetectionStrategy属性让其自己处理循环,省事但是数据过于复杂的话会引起数据溢出或者效率低下。 
Java代码 
[code] 
JsonConfig config = new JsonConfig(); 
config.setIgnoreDefaultExcludes(false); 
config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); 
config.registerJsonValueProcessor(Date.class,new DateJsonValueProcessor("yyyy-MM-dd")); //date processor register 
String tempStr = "{\"TotalRecords\":"+ total.toString() +",\"Datas\":"+JSONSerializer.toJSON(list,config).toString()+"}"; 
out.print(tempStr);
Javascript 相关文章推荐
javascript vvorld 在线加密破解方法
Nov 13 Javascript
jQuery中document与window以及load与ready 区别详解
Dec 29 Javascript
JavaScript模拟重力状态下抛物运动的方法
Mar 03 Javascript
javascript实现的简单的表单验证
Jul 10 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
Aug 20 Javascript
webpack热模块替换(HMR)/热更新的方法
Apr 05 Javascript
layui 表格的属性的显示转换方法
Aug 14 Javascript
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
学习RxJS之JavaScript框架Cycle.js
Jun 17 Javascript
vue服务端渲染操作简单入门实例分析
Aug 28 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
Nov 25 Javascript
js判断密码强度的方法
Mar 18 Javascript
ext combox 下拉框不出现自动提示,自动选中的解决方法
Feb 24 #Javascript
javascript Firefox与IE 替换节点的方法
Feb 24 #Javascript
jQuery 性能优化手册 推荐
Feb 23 #Javascript
jquery实现的超出屏幕时把固定层变为定位层的代码
Feb 23 #Javascript
JSON 学习之JSON in JavaScript详细使用说明
Feb 23 #Javascript
js下用层来实现select的title提示属性
Feb 23 #Javascript
jquery 锁定弹出层实现代码
Feb 23 #Javascript
You might like
德生PL990的分析评价
2021/03/02 无线电
mysql 性能的检查和优化方法
2009/06/21 PHP
PHP中的Memcache详解
2014/04/05 PHP
PHP输出图像imagegif、imagejpeg与imagepng函数用法分析
2016/11/14 PHP
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
PHP函数积累总结
2019/03/19 PHP
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
JQuery1.8 判断元素是否绑定事件的方法
2014/07/10 Javascript
jquery选择器需要注意的问题
2014/11/26 Javascript
浅谈页面装载js及性能分析方法
2014/12/09 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
详谈JS中实现种子随机数及作用
2016/07/19 Javascript
详解Node.Js如何处理post数据
2016/09/19 Javascript
jQuery基于ajax方式实现用户名存在性检查功能示例
2017/02/10 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
Three.js利用Detector.js插件如何实现兼容性检测详解
2017/09/26 Javascript
Vuex提升学习篇
2018/01/11 Javascript
vue axios整合使用全攻略
2018/05/24 Javascript
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
Python3基础之list列表实例解析
2014/08/13 Python
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
python实现QQ空间自动点赞功能
2019/04/09 Python
Django 多环境配置详解
2019/05/14 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
详解Python3 中的字符串格式化语法
2020/01/15 Python
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
HTML文本属性&颜色控制属性的实现
2019/12/17 HTML / CSS
Linux文件系统类型
2012/02/15 面试题
《狐假虎威》教学反思
2014/02/07 职场文书
作文评语大全
2014/04/23 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
自我检讨书范文
2015/01/28 职场文书
小学三八妇女节活动总结
2015/02/06 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书
通知怎么写?
2019/04/17 职场文书