/
[FDJ-010] Hibernate

[FDJ-010] Hibernate

Este curso ofrece una formación completa sobre el mapeo de entidades, relaciones y herencia en bases de datos, utilizando XML y anotaciones en Java. También abarca consultas avanzadas con HQL y Criteria API, gestión de transacciones, concurrencia, patrones de uso en aplicaciones web, caché y conceptos avanzados como interceptores y tipos personalizados.

Duración:                     20 horas

Perfil:                            Avanzado

Dirigido a

Esta acción formativa va dirigida a programadores y analistas Java que deseen profundizar en el uso de Hibernate para la gestión de persistencia en aplicaciones, implementar soluciones eficientes y escalables.

Requisitos previos 

Los alumnos necesitarán tener experiencia con el lenguaje de programación Java, así como de JDBC y SQL previos para poder comprender la materia del curso con éxito. 

Objetivos

  • Comprender y aplicar los conceptos fundamentales de Hibernate.
  • Aprender a realizar consultas avanzadas.
  • Gestionar estados de objetos, concurrencia y transacciones.
  • Implementar patrones de diseño.
  • Explorar conceptos avanzados.


Contenido

  1. Mapeo de Entidades y Value Types
    1. Mapeo de clases a tablas mediante XML
    2. Mapeo utilizando anotaciones en Java
  2. Mapeo de Colecciones
    1. Configuración y uso de listas, conjuntos, mapas y arrays
  3. Mapeo de Relaciones entre Entidades
    1. Relaciones uno a uno, uno a muchos, muchos a uno y muchos a muchos
    2. Implementación de relaciones bidireccionales
  4. Mapeo de Herencia
    1. Estrategias para el mapeo de jerarquías de clases (tabla por clase, tabla por jerarquía, tabla por subclase)
    2. Combinación de estrategias según necesidades del modelo
  5. Estados de los Objetos en Hibernate
    1. Estados persistente, transitorio y detached
    2. Ciclo de vida de los objetos gestionados por Hibernate
  6. Consultas en Hibernate
    1. Uso de Hibernate Query Language (HQL) para consultas avanzadas
    2. Consultas mediante Criteria API (QBC) y el patrón ByExample (QBE)
  7. Concurrencia y Gestión de Transacciones
    1. Versionado de entidades para control de concurrencia
    2. Estrategias de bloqueo (optimista y pesimista)
  8. Patrones de Uso en Aplicaciones Web
    1. Implementación de OpenSessionInView
    2. Uso de ConversationFilter para la gestión de sesiones largas
  9. Conceptos Avanzados
    1. Creación y uso de tipos personalizados
    2. Implementación de interceptores y manejo de eventos
    3. Adaptación de dialectos para diferentes bases de datos
  10. Gestión de Cachés
    1. Configuración y uso de caché de primer y segundo nivel



Documentación Recomendada

Java Persistence with Hibernate, Second Edition
Christian Bauer, Gavin King, and Gary Gregory
Octubre 2015 | 608 páginas 

https://www.manning.com/books/java-persistence-with-hibernate-second-edition

Related content