Ejercicio de programación con Hibernate: Carga de asociaciones en consultas con EntityGraph y anotaciones
0h 15m
Ejercicios JPA Carga Asociaciones Entity Graph. Domina la carga de asociaciones con Entity Graph en JPA mediante ejercicios prácticos.
Se tiene un modelo simple que involucra dos entidades: Autor
y Libro
. Cada Autor
puede tener múltiples Libros
.
Las clase Autor
deberá ser anotada apropiadamente para que Hibernate pueda gestionarla como entidad. Además, deberás utilizar EntityGraph para optimizar la consulta, de forma que un autor se recupere junto con sus libros, trayendo únicamente el titulo
en cada entidad Libro
asociada. Debes usar las anotaciones @NamedEntityGraph
, @NamedAttributeNode
y @NamedSubgraph
para configurar el grafo de entidades. Asume que la entidad Libro
ya está creada, solo tienes que crear Autor
.
La entidad Autor
tiene los siguientes campos:
id
(Long, clave primaria)nombre
(String)libros
(conjunto deLibro
, relación OneToMany)
La entidad Libro
es:
import jakarta.persistence.*;
@Entity
public class Libro {
@Id
@GeneratedValue
private Long id;
private String titulo;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "autor_id")
private Autor autor;
// Constructor, getters y setters no incluidos para simplificar
}
No es necesario implementar métodos como getters/setters ni constructores para este ejercicio.
Todos los ejercicios de programación de Hibernate
Evalúa tus conocimientos con ejercicios de programación en Hibernate de tipo Test, Puzzle, Código y Proyecto con VSCode.
Asociación One To Many
Carga de asociaciones en consultas con EntityGraph
CRUD en Hibernate
Funciones en consultas JPQL
Asociación Many To Many
Asociación One To One
Asociación Many To One
Tipos de datos embebidos
Asociación Many To Many entre Actor y Pelicula
CRUD de entidades con asociaciones
Asociación Many To One
Optimización de asociaciones con carga lazy
Asociación One To Many
Atributos de tipo enum en entidades JPA
Consultas Criteria avanzadas
Configuración con Maven
Asociación Many To Many
Consultas Criteria básicas
Introducción a Hibernate
Configuración con Gradle
Asociación One To Many entre Curso y Estudiante
Operaciones en cascada
Operaciones en cascada
Consultas JPQL básicas
Tipos de datos básicos
Asociación One To One
Asociación One To One entre Libro y Resumen
Optimización de consultas con DTOs
Asociación Many To One entre Paciente y Clinica
Atributos @Transient en entidades
Tipos de datos personalizados
Ciclo de vida de una entidad
Consultas JPQL avanzadas
Configuración con JPA
Tutorial para resolver este ejercicio de programación
Hibernate
Carga de asociaciones en consultas con EntityGraph y anotaciones
Optimización