Java中FetchType LAZY和EAGER之间的区别

一、概述

我是Java Persistence API和Hibernate的新手。

FetchType.LAZYFetchType.EAGERJava Persistence API之间有什么区别

二、详解

基本上,

LAZY = fetch when needed
EAGER = fetch immediately

Lazy提取类型默认情况下由Hibernate选择,除非你明确地标记Eager取型。为了更加准确和简洁,可以将差异说明如下。

FetchType.LAZY =除非您通过getter方法调用它,否则不会加载关系。

FetchType.EAGER =这将加载所有关系。

这两种类型的利弊。

Lazy initialization 通过避免不必要的计算来提高性能并减少内存需求。

Eager initialization 需要更多的内存消耗,并且处理速度很慢。

话虽如此,根据情况,可以使用这些初始化中的任何一种。

如若转载,请注明出处:https://www.javaidea.cn/article/8406.html

(0)
上一篇 2022年2月7日 上午10:03
下一篇 2022年2月7日 上午10:03

相关推荐

发表评论

您的电子邮箱地址不会被公开。