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 对象的定义方法
Jan 10 Javascript
jquery获取input表单值的代码
Apr 19 Javascript
JavaScript对象创建及继承原理实例解剖
Feb 28 Javascript
node.js中的fs.rmdirSync方法使用说明
Dec 16 Javascript
JQuery 在文档中查找指定name的元素并移除的实现方法
May 19 Javascript
jquery利用json实现页面之间传值的实例解析
Dec 12 Javascript
JavaScript制作简易计算器(不用eval)
Feb 05 Javascript
Javascript继承机制详解
May 30 Javascript
js实现多张图片延迟加载效果
Jul 17 Javascript
Vue.js仿Select下拉框效果
Feb 18 Javascript
node创建Vue项目步骤详解
Mar 06 Javascript
详解Vue3使用axios的配置教程
Apr 29 Vue.js
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
单位速度在实战中的运用
2020/03/04 星际争霸
PHP获取windows登录用户名的方法
2014/06/24 PHP
PHP不用递归遍历目录下所有文件的代码
2014/07/04 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
2020/02/21 PHP
PHP safe_mode开启对于PHP系统函数有什么影响
2020/11/10 PHP
javascript操作excel生成报表示例
2014/05/08 Javascript
在Google 地图上实现做的标记相连接
2015/01/05 Javascript
基于JavaScript实现TAB标签效果
2016/01/12 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
Bootstrap 手风琴菜单的实现代码
2017/01/20 Javascript
Vue数据绑定简析小结
2019/05/07 Javascript
js console.log打印对象时属性缺失的解决方法
2019/05/23 Javascript
js实现页面图片消除效果
2020/03/24 Javascript
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
python字符串str和字节数组相互转化方法
2017/03/18 Python
Python进程间通信Queue实例解析
2018/01/25 Python
wtfPython—Python中一组有趣微妙的代码【收藏】
2018/08/31 Python
python调用matlab的m自定义函数方法
2019/02/18 Python
CSS3 制作旋转的大风车(充满童年回忆)
2013/01/30 HTML / CSS
美国小蜜蜂Burt’s Bees德国官网:天然唇部、皮肤和身体护理产品
2020/06/14 全球购物
25道Java面试题集合
2013/05/21 面试题
宣传策划类求职信范文
2014/01/31 职场文书
人事部专员岗位职责
2014/03/04 职场文书
机械制造专业大学生自我鉴定
2014/09/19 职场文书
上课迟到检讨书300字
2014/10/15 职场文书
机关工会工作总结2015
2015/05/26 职场文书
六一儿童节致辞
2015/07/31 职场文书
2015年社区反邪教工作总结
2015/10/14 职场文书
《作风建设永远在路上》心得体会
2016/01/21 职场文书
Nginx实现高可用集群构建(Keepalived+Haproxy+Nginx)
2021/05/27 Servers
原生JS实现飞机大战小游戏
2021/06/09 Javascript
MySQL 数据恢复的多种方法汇总
2021/06/21 MySQL
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers
Java 多线程协作作业之信号同步
2022/05/11 Java/Android
SQLServer常见数学函数梳理总结
2022/08/05 MySQL