3

场景 - 用户表包含延迟加载的 createdBy (userId) 列。

当我获取用户列表时,一些对象在用户获取的主列表中显示为惰性。当我检查时,发现延迟加载的对象以 createdBy (延迟加载)的形式存在于主列表中的其他用户对象中。

我附上了截图来更详细地解释。第一个屏幕截图显示由作为用户对象(惰性)创建。第二个屏幕截图显示相同的用户对象是惰性的,即使它位于用户获取的主列表下。--------第一张图片-----惰性嵌套对象作为 createdBy -----第二张图片 - ---- 当同一个对象在嵌套中懒惰时,懒惰的主对象 请帮助。

发生的事情是假设我有 3 个用户是我的名为 A、B 和 C 的表。A 是由 B 创建的。而现在用户对象有 createdBy 字段,该字段是延迟加载的。当我使用休眠从数据库中获取我的用户时,我得到用户 A(实际对象)、B(惰性对象)、C(实际对象)。当我检查我发现我得到 B 因为懒惰 bcoz B 也存在于对象 A 中作为 createdBy 字段并且它在那里是懒惰的。

4

1 回答 1

0

什么问题??

当实体以惰性格式加载时。您只会看到像 img 1, UserId 中的最小细节。如果您在 img 2 中看到 User 对象内部,则所有值都为 null,因为它们绑定到延迟加载。

在延迟加载中,值仅在使用时加载。

例如。你可以使用 user.getAccesstoken ,你会看到它的价值。

于 2018-02-12T16:32:58.547 回答