Hibernate - 为什么实体在@OneToMany和@ManyToOne关系中重复?

时间:2016-10-13 14:00:54

标签: java hibernate

我有两个相互关联的实体:

@OneToMany

相关业务规则是:EntityA可以有一个或多个EntityB,因此@OneToMany(fetch = FetchType.EAGER, mappedBy = "entityA")。每个EntityB只能分配给一个EntityA。最初

应用程序的信息流是这样的 - 首先获得EntityA列表,然后选择一个EntityA,以便获得与所选EntityA关联的所有EntityB的列表。

问题是: 如果我每个EntityA只有一个EntityB,我会在第一个屏幕上得到正确的行为。 如果我有一个EntityB与EntityA关联,则第一个屏幕显示EntityA的数量等于与其关联的EntityB的数量。

但是如果我将EntityA的注释从@OneToMany(fetch = mappedBy = "entityA")更改为org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: b.c.m.h.m.EntityA.listOfBs, could not initialize proxy - no Session,则在第一个屏幕中显示正确的行为(一个实体A,无论有多少个实体B与之关联),但是当我尝试访问它我得到以下错误:

{{1}}

这里发生了什么?

编辑 - 在另一个问题上提供的解决方案并没有解决我的问题。

0 个答案:

没有答案