【发布时间】:2011-02-23 17:59:53
【问题描述】:
一开始有一个问题想要解决。在我的情况下,我在 Collection 中使用 indexof 来检索对象进行操作时遇到了 LazyInitializationException。在这里,我开始考虑在 EntityBeans 中使用 equals(完全是 OR-Mapper)。我知道有一些关于覆盖与 OR-Mapper 相关的等于作为休眠的讨论
[1]Entities equals(), hashCode() and toString(). How to correctly implement them?
[2]To equals and hashcode or not on entity classes, that is the question.
我目前有一些实现 equals 的实体,但由于 LazyInitializationExceptions,在代码中我无法多次使用 equals。所以我不得不解决并使用例如。对象的 name 属性以标识它的相等性。从我的角度来看,这个问题并没有真正提到整个“LazyInitializationException-thing”。
我想知道您是否有一些好的模式或真实的建议,如何在 equal-Method 中避免此类异常。我应该使用一些辅助方法来区分一个类的对象是否已经初始化(4)还是应该使用 equals 并使用辅助类(2)?在 equals 中捕获 LazyInitializationExceptions 是什么意思?
[编辑]:如果你把 equals 放在对象初始化的上下文中,那么它就会变得重要。有时需要完全初始化对象,但有时您不想这样做。因为您只需要对象本身(名称、id、...)而不是其集合属性。所以只是为了均衡,你必须重新连接对象并加载你不需要的全部?对于这样的问题,还有其他解决方案吗?
【问题讨论】:
标签: java hibernate exception lazy-evaluation