Junior — Middle
Jak zaimplementowałeś leniwe ładowanie danych podczas korzystania z Hibernate?
sobes.tech AI
Odpowiedź od AI
W Hibernate można zaimplementować leniwe ładowanie danych za pomocą adnotacji @OneToMany(fetch = FetchType.LAZY) lub podobnych dla innych relacji. Oznacza to, że powiązane encje nie są ładowane od razu przy wyborze głównej encji, lecz dopiero przy pierwszym odwołaniu się do nich.
Przykład:
@Entity
public class User {
@OneToMany(fetch = FetchType.LAZY, mappedBy = "user")
private Set<Order> orders;
}
W tym przykładzie kolekcja orders zostanie załadowana z bazy danych dopiero przy pierwszym wywołaniu user.getOrders(). Pomaga to zoptymalizować wydajność, zmniejszając ilość ładowanych danych, jeśli powiązane obiekty nie są od razu potrzebne.