Sobes.tech
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;