Sobes.tech
Junior — Middle

Welke soorten lazy en eager loading strategieën voor gegevens in JPA zijn bekend?

sobes.tech AI

Antwoord van AI

In JPA zijn er twee hoofdstrategieën voor het laden van gerelateerde gegevens:

  • Eager laden (EAGER): gerelateerde entiteiten worden onmiddellijk samen met de hoofdentiteit geladen. Dit is handig wanneer de gerelateerde gegevens direct nodig zijn, maar kan leiden tot overmatige queries en verminderde prestaties.

  • Lazy laden (LAZY): gerelateerde entiteiten worden alleen geladen bij de eerste toegang. Dit bespaart resources, maar vereist dat de EntityManager-sessie open is op het moment van toegang tot de gegevens, anders kan een LazyInitializationException optreden.

Voorbeeld van annotatie in JPA:

@OneToMany(fetch = FetchType.LAZY)
private List<Order> orders;

@OneToOne(fetch = FetchType.EAGER)
private Profile profile;