如果数据间存在级联关系,在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 jobj1=JSONObject.fromObject(orderLevel,jsconfig);
分享到:
相关推荐
在Hibernate中,Cascade和Inverse是两个非常重要的概念,它们分别用于处理对象之间的关联关系和级联操作。在理解和使用Hibernate时,了解它们的区别至关重要。 首先,`Cascade`属性主要用于控制对象之间的级联操作...
理解这两个属性对于有效管理 Hibernate 中的对象关系至关重要,尤其是在处理复杂的数据模型和事务操作时。通过合理设置这两个属性,开发者可以简化代码,提高应用程序的效率和数据一致性。在实际开发中,需要根据...
这使得在处理对象图时,能够简化操作,避免手动处理相关联对象的持久化状态。级联操作主要有以下几种: - `none`:默认值,不进行任何级联操作。 - `save-update`:当父对象保存或更新时,同时保存或更新所有子对象...
于Hibernate中 cascade 与 inverse 的理解。 您买的Hibernate书是哪一本呢? 孙卫琴的精通Hibernate,还是 深入浅出Hibernate还是那本。。。 我是两本都买了,总体来说还可以,但是,有的地方讲的比较书面化,比如...
Hibernate cascade (级联).docHibernate_cascade(级联).doc
hibernate cascade 测试demo
\hibernate_配置cascade_及all-delete-orphan.doc
在一对多关系中,如果一个实体(父实体)与多个实体(子实体)关联,设置级联属性可以确保在处理父实体时,子实体的操作也会随之进行。例如,当删除父实体时,可以选择是否同时删除所有子实体。Hibernate提供了多种...
NULL 博文链接:https://dreamzhong.iteye.com/blog/1273157
hibernate inverse和cascade的详细讲解,相当详细全面的对inverse和cascade区别和用法的讲解
Hibernate中Inverse和Cascade的区别.html
在Hibernate中,`cascade`和`inverse`是两个重要的概念,它们涉及到对象之间的关系管理和数据持久化。 **1. Hibernate Cascade** `cascade`属性主要用于控制对象间的级联操作。当在主对象上执行保存、更新、删除等...
《Hibernate参考指南中文版》与《Hibernate中文手册》是学习Java领域中ORM(对象关系映射)框架Hibernate的重要参考资料。Hibernate作为一个开源的、强大的持久化框架,极大地简化了数据库操作,使得开发人员能够以...
12. **级联操作(Cascade)**:在关联关系中,设置cascade属性可以指定父对象的操作是否影响子对象,例如,当删除父对象时,可以选择同时删除所有子对象。 13. **集合映射**:Hibernate提供了Set、List、Map等多种...
量子密钥分发中Cascade协议的一种改进方案
所以,适当的做法是,删除主表的同时,关联表的信息也要同时删除,在hibernate中,只需设置cascade属性值即可。 cascade表示级联操作,在hibernate配置注解@OneToOne,@OneToMany,@ManyToMany,@ManyToOne中的属性...
`@Embeddable`和`@Embedded`用于处理嵌入式对象,这些对象的属性会直接映射到包含它的实体表中。 2.2.4. 映射继承关系:Hibernate支持多种继承映射策略,如单一表继承(每个类一张表)、表-per-hierarchy(每个类...
在Hibernate的XML映射文件中,集合类型的关联关系经常使用`<set>`标签,如`<set>`下的`name`属性指定集合属性名,`table`属性指定中间表(多对多关系时),`inverse`属性表示维护关系的责任方,`cascade`属性控制...
《Hibernate Annotation 中文文档》是Java开发者们的重要参考资料,它详细介绍了如何在Hibernate框架中使用注解进行对象关系映射(ORM)。Hibernate是一款强大的开源Java持久化框架,它简化了数据库与Java对象之间的...