Junior — Middle
Ce tipuri de strategii de încărcare leneșă și avidă a datelor în JPA sunt cunoscute?
sobes.tech AI
Răspuns de la AI
În JPA, există două strategii principale pentru încărcarea datelor legate:
-
Încărcare eager (EAGER): entitățile legate sunt încărcate imediat împreună cu entitatea principală. Acest lucru este util atunci când datele legate sunt necesare imediat, dar poate duce la interogări excesive și scăderea performanței.
-
Încărcare lazy (LAZY): entitățile legate sunt încărcate doar la prima accesare. Acest lucru economisește resurse, dar necesită ca sesiunea EntityManager să fie deschisă în momentul accesului la date, altfel poate apărea o eroare LazyInitializationException.
Exemplu de adnotare în JPA:
@OneToMany(fetch = FetchType.LAZY)
private List<Order> orders;
@OneToOne(fetch = FetchType.EAGER)
private Profile profile;