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