在学习hibernate时,我遇到了一种情况,Hibernate似乎有循环引用,我不知道如何度过这种情况。我有两个班级的父母
private String uuid;
private String name;
private Set<ChildClass> childclass=new HashSet<ChildClass>();
这是相同的映射文件
<property name="name" type="string" column="NAME" length="255" />
<set name="childclass" table="Parent_Child" lazy="extra"
cascade="save-update">
<key column="parent_id" />
<many-to-many class="com.test.child.ChildClass" column="child_id"/>
</set>
子条目如下
private String name;
private Set<ParentClass> parent=new HashSet<ParentClass>();
private String child_id;
<property name="name" type="string" column="NAME" length="255" />
<set name="parent" table="Parent_Child" inverse="true" lazy="extra"
cascade="save-update">
<key column="child_id"/>
<many-to-many class="com.test.parent.ParentClass" column="PARENT_ID"/>
</set>
当我在我的主要代码中尝试这样的事情时
tx1.begin();
String query="from ParentClass as pc";
Query query1=session1.createQuery(query);
List list= query1.list();
现在,当我尝试使用迭代器方法或任何进入无限循环的集合方法来迭代列表时,真正的问题就在这里
在我即将到来的作业中,我有一个父类,它有这么多对子类的集合引用,它们都具有多对一和一对多的关系。
因此,似乎在那种情况下,我会尝试从父实体中获取子实体,例如
parent.getChild().iterator()
它将运行到循环引用。如果我走错了路,请建议我如何避免这种情况或纠正我