Senior
Ի՞նչ հարաբերություններ կան Hibernate-ի մեջ ըստ նախնական կարգավորման՝ eager (EAGER), թե lazy (LAZY):
sobes.tech AI
Պատասխան AI-ից
В Hibernate по умолчанию отношения между сущностями имеют следующие типы загрузки:
- @ManyToOne и @OneToOne — по умолчанию EAGER (жадная загрузка). Это значит, что связанные сущности загружаются сразу вместе с основной.
- @OneToMany и @ManyToMany — по умолчанию LAZY (ленивая загрузка). Связанные коллекции загружаются только при обращении к ним.
Это поведение можно переопределить с помощью аннотаций @FetchType.LAZY или @FetchType.EAGER.
Пример:
@Entity
class Order {
@ManyToOne(fetch = FetchType.EAGER) // по умолчанию
private Customer customer;
@OneToMany(fetch = FetchType.LAZY) // по умолчанию
private Set<OrderItem> items;
}