Hibernate,关于持久层缓存

时间:2017-12-04 18:11:10

标签: java hibernate jpa

我一直在阅读Java Persistence with Hibernate,在本书中,它是在第9章第5页中写的。 390持久层高速缓存确保以下内容:

在对象图中循环引用的情况下,持久层不容易受到堆栈溢出的影响。

请帮助我理解为什么持久层不容易受到堆栈溢出的影响?

谢谢!

1 个答案:

答案 0 :(得分:0)

我确实找到了一个非常确定的答案,但我在Hibernate 3.5文档中找到了一些东西:

5.2。休眠类型

5.2.1。实体和价值

关于持久性服务,Java语言级对象分为两组:

实体的存在独立于持有对实体的引用的任何其他对象。将其与通常的Java模型进行对比,其中未引用的对象被垃圾收集。必须明确保存和删除实体。但是,保存和删除可以从父实体级联到其子级。这与通过可达性的对象持久性的ODMG模型不同,并且更接近于如何在大型系统中使用应用程序对象。 实体支持循环和共享引用。它们也可以进行版本控制。

根据粗体中突出显示的行,我假设Hibernate内部检查这样的循环引用,并且不加载多个嵌套实体级别。非常类似于Java中的静态类具有自己类型的静态引用成员。