Hibernate 双向关联实体转Json
来源:互联网 发布:adobe flash mac 编辑:程序博客网 时间:2024/05/19 13:06
前言
对于Hibernate中双向关联实体转换成Json中,会包错:JSONException: There is a cycle in the hierarchy!,会点英语的都知道这句话是什么意思,就是在转换Json的过程中出现了死循环,就是因为实体中存在了互相关联的原因。遇到这类原因你先不要就去百度了,先自己思考Json转换之前是不是需要配置一些信息可以解决过滤问题,此时你可以在你自己的代码基础之上看,Json字符开头的有哪些类,你将会看到JsonConfig这个类的时候,你就看字面意思就是Json转换配置了,再想配置肯定是set()方法之类的,那么这时候你就先敲出set看看有哪些方法:
这时候你是不是看到了一个希望和奇迹并存的单词Exclude:排除,是的希望就在眼前了,那么再看它有哪些参数:
看着是一个String[]数组,那么就对了,是他是他就是他,我们的希望排除他,此时我们就可以完善自己的代码:
ArrayList<Good> goodList = (ArrayList<Good>) HibernateUtils.query("from Good where cart_id = ?", new Object[]{"1"});
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setExcludes(new String[]{"user","goods"});
JSONArray responseJsonMsgs=JSONArray.fromObject(goodList,jsonConfig);
System.out.print(responseJsonMsgs.toString());
看看输出日志:
Hibernate: select good0_.cart_id as cart1_1_, good0_.user_id as user2_1_, good0_.good_id as good3_1_, good0_.good_name as good4_1_, good0_.good_price as good5_1_ from exercise.good good0_ where cart_id=?
此处的排除的user和goods是属性名称:
- Hibernate 双向关联实体转Json
- hibernate的实体类双向关联转json报错之死循环解决方案
- Hibernate表关联对象转Json双向关联解析过度
- Hibernate双向关联转Json死循环问题(Gson)
- hibernate双向关联转化为Json数据
- Hibernate双向关联 Json死循环
- Hibernate实体关系映射:双向主键一对一关联
- Hibernate中的延迟加载、实体关联单向一对多及双向一对多实体关联
- hibernate 实体关联
- Hibernate one2many 双向关联
- hibernate关联映射-双向
- hibernate双向关联注意
- Hibernate一对一双向关联
- hibernate 一对一双向关联
- Hibernate一对一双向关联
- hibernate configration 双向关联
- Hibernate 双向一对一关联
- Hibernate一对一双向关联
- 最好用的mysql密码忘记的解决方法
- Leetcode Restore IP Addresses
- Apache Maven 入门篇(下)
- shell字符串包含空格处理
- 今日头条的视频地址解析方法
- Hibernate 双向关联实体转Json
- HBase Rowkey设计
- 49、把字符串转换成整数
- linux小技巧:快速合并压缩文件
- PaaS平台的尴尬与变革
- 果蝇算法--背包问题
- adb控制MTKLogger
- linux win 共享文件
- 设计模式---命令模式