假设我有 2 个表(mysql)表 A:idA、姓名、电话
表 B:idB、data1、data2、idA
在表 B 中:idA 用作外键,它是通过 mysql 工作台配置的。
现在,我正在尝试将 Hibernate 与 jersy 一起使用(构建某种休息 API)
我正在使用 netbeans 作为我的 IDE。
最后如果得到:
- 爪哇
- B.java
- 一个.hbm.xml
- B.hbm.xml
B.hbm.xml
<many-to-one name="a" class="DataTypes.A">
<column name="idA" length="45" not-null="true" />
</many-to-one>
...
在 B.java 中
public class B implements java.io.Serializable {
private Integer idB;
private A a;
...
}
爪哇
public class User implements java.io.Serializable {
private String idA;
private String
private Set<B> bs = new HashSet<B>(0);
....
}
以及 A.hbm.xml 中的某些部分
<set name="bs" inverse="true">
<key>
<column name="idA" length="45" not-null="true" />
</key>
<one-to-many class="DataTypes.B" />
</set>
主要问题是当我使用休眠来获取表A的所有条目时,结果是对所有A记录的休眠查询,并且对于每条记录,它在获得它的B(因为它的外键)之后寻找它的B(设置)它的外观再次对于它的A等等..
2个问题:):这个递归有什么解决方案吗?还是我应该删掉这个循环引用?我的数据库模型可以吗?(外键)
感谢您的时间。