Programación Entornos de programación

Cod. PRX0000042

Curso de Hibernate y JPA en Java: capa de persistencia e integración con Spring

Domine Hibernate y JPA en Java para una persistencia sólida: mapeo ORM, sesiones, transacciones, HQL/Criteria e integración con Spring Data JPA.

Hibernate y JPA en Java: capa de persistencia e integración con Spring
PRÓXIMAMENTE
Hibernate y JPA en Java: capa de persistencia e integración con Spring
PRÓXIMAMENTE

En el desarrollo de software Java, la capa de acceso a datos suele ser uno de los puntos más críticos: impacta directamente en el rendimiento, la mantenibilidad, la seguridad de las transacciones y la calidad general de la aplicación. Hibernate se ha consolidado como una de las soluciones ORM más utilizadas para trabajar con bases de datos relacionales, porque permite reducir código repetitivo, modelar el dominio de forma más natural y aplicar buenas prácticas de persistencia sin perder control sobre lo que ocurre “por debajo”.

En este curso de Desarrollo de Aplicaciones con Hibernate, aprenderás a construir una capa de persistencia sólida y profesional, desde los fundamentos del mapeo objeto–relacional hasta la implementación de consultas y operaciones avanzadas. A lo largo del recorrido, verás cómo definir entidades y relaciones, cómo gestionar correctamente sesiones y transacciones, y cómo escribir consultas eficientes para obtener y actualizar información sin comprometer el rendimiento. También trabajarás con criterios y estrategias de carga, optimización y buenas prácticas que se aplican en proyectos reales, para evitar problemas típicos como consultas ineficientes, inconsistencias de datos o errores de diseño en el modelo.

Al finalizar, el/la estudiante será capaz de:

  • Modelar entidades y relaciones (1:1, 1:N, N:M) aplicando mapeos adecuados.
  • Implementar operaciones CRUD y reglas de persistencia en aplicaciones Java.
  • Gestionar transacciones y ciclo de vida de la sesión con buenas prácticas.
  • Construir consultas con HQL/JPQL y Criteria (según el enfoque del curso) para escenarios frecuentes y complejos.
  • Aplicar estrategias de rendimiento (carga perezosa/ansiosa,
  • Dirigido a

    • Desarrolladores/as Java que desean incorporar un ORM profesional en sus proyectos.
    • Programadores/as backend que trabajan con aplicaciones empresariales (Spring / Jakarta EE) y necesitan mejorar la capa de persistencia.
    • Analistas programadores/as y perfiles full stack con foco en backend Java y bases de datos relacionales.
    • Profesionales de TI que mantienen o evolucionan aplicaciones Java con acceso a datos (CRUD, reporting, transacciones).
    • Equipos de desarrollo que buscan estandarizar buenas prácticas de mapeo objeto–relacional y rendimiento en acceso a datos.

  • ¿Qué competencias vas a adquirir?

    Desarrollar la capa de persistencia de aplicaciones Java utilizando Hibernate, aplicando mapeo objeto–relacional, gestión de sesiones y transacciones, consultas eficientes (HQL/Criteria), y buenas prácticas de diseño y rendimiento para el acceso a datos.

  • Requisitos

    • Conocimientos básicos de programación orientada a objetos en Java (clases, herencia, interfaces, colecciones).
    • Manejo de SQL a nivel básico–intermedio (consultas, joins, operaciones CRUD).
    • Comprensión general de bases de datos relacionales y conceptos como claves primarias/foráneas y relaciones (1:1, 1:N, N:M).

  1. Introducción a Hibernate y ORM en Java
    • Conceptos básicos de ORM y ventajas en aplicaciones Java
    • Arquitectura de Hibernate y componentes principales
    • Configuración inicial y requisitos para usar Hibernate
  2. Mapeo objeto–relacional: fundamentos y estrategias
    • Definición de entidades y mapeo básico
    • Mapeo de relaciones 1:1, 1:N y N:M
    • Uso de anotaciones y archivos XML para mapeos
  3. Configuración avanzada de Hibernate
    • Archivos de configuración y propiedades esenciales
    • Manejo de múltiples sesiones y unidades de trabajo
    • Integración con frameworks Java empresariales (Spring / Jakarta EE)
  4. Operaciones CRUD con Hibernate
    • Crear, leer, actualizar y eliminar entidades
    • Uso de sesiones y método save, update, merge
    • Manejo de cascadas y estados de entidad
  5. Gestión de sesiones y ciclo de vida de entidades
    • Estados de las entidades: Transient, Persistent y Detached
    • Contexto de persistencia y sesión Hibernate
    • Borrado y manejo de colecciones relacionadas
  6. Transacciones y gestión de concurrencia
    • Conceptos de transacción en Hibernate
    • Declaración y control de transacciones programáticas y declarativas
    • Manejo de bloqueos optimistas y pesimistas
  7. Consultas con HQL y JPQL
    • Fundamentos de HQL y JPQL: estructura y sintaxis
    • Consultas simples y con parámetros
    • Consultas avanzadas: joins, subconsultas y agregaciones
  8. Consultas con Criteria API
    • Introducción y ventajas de Criteria
    • Construcción dinámica de criterios de consulta
    • Proyecciones, ordenamientos y restricciones
  9. Estrategias de carga y optimización del rendimiento
    • Carga ansiosa vs carga perezosa: conceptos y uso
    • Optimización con fetching strategies y batch fetching
    • Uso de segundo nivel de caché en Hibernate
  10. Buenas prácticas en diseño y desarrollo con Hibernate
    • Gestión eficiente de sesiones y ciclo de vida
    • Evitar problemas comunes: N+1, lazy initialization y memory leaks
    • Pruebas y depuración de la capa de persistencia
  11. Manejo de transacciones complejas y patrones de diseño
    • Transacciones anidadas y propagación
    • Patrones de repositorio y DAO con Hibernate
    • Integración con servicios y gestión de errores
  12. Integración de Hibernate con Spring Framework
    • Configuración básica de Hibernate en Spring
    • Uso de Spring Data JPA y repositorios personalizados
    • Gestión declarativa de transacciones con Spring
  13. Reportes y consultas avanzadas con Hibernate
    • Consultas nativas y almacenadas
    • Generación de reportes y exportación de datos
    • Manejo de resultados complejos y DTOs

Este curso se encuentra en desarrollo

gears
Avísame cuando esté disponible

Otros cursos que te pueden interesar

Este sitio utiliza cookies propias y de terceros con fines analíticos anónimos, para guardar tus preferencias y garantizar el correcto funcionamiento del sitio web.

Puedes aceptar todas las cookies, rechazarlas o configurarlas según tus preferencias utilizando los botones correspondientes.

Puedes obtener más información y volver a configurar tus preferencias en cualquier momento en la Política de cookies