Student s = sDao.findOne(id);
之后的集合时出现错误,尝试在此处搜索,但找不到正确的解决方案。任何东西都会产生相同的结果。,Error log,Discipline
和Student
实体的hashcode()
方法实现都使用这两个实体。可能是我错了,堆栈跟踪不太清楚。
您如何定义实体的
equals()
和hashcode()
方法?假设实体
A
和实体B
具有双向关系。IF
equals()/hashcode()
实现实体A
对实体
B
字段调用equals()/hashcode()
,而实体B
字段本身又调用实体A
字段,则您有一个循环。而您的错误。,此外,即使您在
equals()/hashcode()/toString()
中通过确保两者中只有一个引用另一个来缩短周期,也应该谨慎地调用实体关系的equals()/hashcode()/toString
方法。它可能会对性能产生真正的影响。如果打开了Hibernate会话,它可能确实会执行您意想不到的查询。,这篇关于多对多关系中的Hibernate无限循环递归的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,