多对多关系中的Hibernate无限循环递归

本文介绍了多对多关系中的Hibernate无限循环递归的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!,我要创建双向的学生和学科关系。在我为用户注册纪律之前,一切都很正常。现在我得到无限递归。,类如下所示:,加载Student s = sDao.findOne(id);之后的集合时出现错误,尝试在此处搜索,但找不到正确的解决方案。任何东西都会产生相同的结果。,Error log,DisciplineStudent实体的hashcode()方法实现都使用这两个实体。
可能是我错了,堆栈跟踪不太清楚。
您如何定义实体的equals()hashcode()方法?
假设实体A和实体B具有双向关系。
IFequals()/hashcode()实现实体A
对实体B字段调用equals()/hashcode(),而实体B字段本身又调用实体A字段,则您有一个循环。
而您的错误。,此外,即使您在equals()/hashcode()/toString()中通过确保两者中只有一个引用另一个来缩短周期,也应该谨慎地调用实体关系的equals()/hashcode()/toString方法。
它可能会对性能产生真正的影响。如果打开了Hibernate会话,它可能确实会执行您意想不到的查询。,这篇关于多对多关系中的Hibernate无限循环递归的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,
返回顶部
跳到底部

Copyright 2011-2024 南京追名网络科技有限公司 苏ICP备2023031119号-6 乌徒帮 All Rights Reserved Powered by Z-BlogPHP Theme By open开发

请先 登录 再评论,若不是会员请先 注册