Junior — Middle
Ποιους τύπους στρατηγικών lazy και eager φόρτωσης παρέχει το Hibernate;
sobes.tech AI
Απάντηση από AI
Hibernate поддерживает две основные стратегии загрузки данных:
-
Жадная загрузка (Eager Loading): связанные сущности загружаются сразу вместе с основной сущностью. Это удобно, когда связанные данные точно нужны, но может привести к избыточным запросам.
-
Ленивая загрузка (Lazy Loading): связанные сущности загружаются только при первом обращении к ним. Это экономит ресурсы, но требует сессии Hibernate открытой во время доступа.
Пример аннотации для ленивой загрузки:
@OneToMany(fetch = FetchType.LAZY)
private Set<Order> orders;
Для жадной загрузки:
@OneToMany(fetch = FetchType.EAGER)
private Set<Order> orders;