Junior — Middle
¿Qué tipos de estrategias de carga perezosa y ansiosa en JPA son conocidas?
sobes.tech AI
Respuesta de la IA
En JPA existen dos estrategias principales para cargar datos relacionados:
-
Carga ansiosa (EAGER): las entidades relacionadas se cargan de inmediato junto con la entidad principal. Esto es útil cuando los datos relacionados son necesarios de inmediato, pero puede llevar a consultas excesivas y reducir el rendimiento.
-
Carga perezosa (LAZY): las entidades relacionadas se cargan solo cuando se accede a ellas por primera vez. Esto ahorra recursos, pero requiere que la sesión de EntityManager esté abierta en el momento del acceso a los datos, de lo contrario puede surgir un error LazyInitializationException.
Ejemplo de anotación en JPA:
@OneToMany(fetch = FetchType.LAZY)
private List<Order> orders;
@OneToOne(fetch = FetchType.EAGER)
private Profile profile;