logo

JPA frente a Hibernación

¿Qué es la APP?

Una JPA (Java Persistence API) es una especificación de Java que se utiliza para acceder, administrar y conservar datos entre objetos Java y bases de datos relacionales. Se considera un enfoque estándar para el mapeo relacional de objetos.

entrada estándar en c

JPA puede verse como un puente entre los modelos de dominio orientados a objetos y los sistemas de bases de datos relacionales. Al ser una especificación, JPA no realiza ninguna operación por sí solo. Por lo tanto, requiere implementación. Entonces, las herramientas ORM como Hibernate, TopLink e iBatis implementan especificaciones JPA para la persistencia de datos.


¿Qué es Hibernar?

Un Hibernate es un marco de Java que se utiliza para almacenar los objetos Java en el sistema de base de datos relacional. Es una herramienta ORM (mapeo relacional de objetos) liviana y de código abierto.

Hibernate es una implementación de JPA. Por tanto, sigue los estándares comunes proporcionados por la JPA.


Necesidad de APP

Como hemos visto hasta ahora, JPA es una especificación. Proporciona prototipos y funcionalidades comunes a las herramientas ORM. Al implementar la misma especificación, todas las herramientas ORM (como Hibernate, TopLink, iBatis) siguen los estándares comunes. En el futuro, si queremos cambiar nuestra aplicación de una herramienta ORM a otra, podremos hacerlo fácilmente.


JPA frente a Hibernación

APP Hibernar
Java Persistence API (JPA) define la gestión de datos relacionales en las aplicaciones Java. Hibernate es una herramienta de mapeo relacional de objetos (ORM) que se utiliza para guardar el estado del objeto Java en la base de datos.
Es sólo una especificación. Varias herramientas ORM lo implementan para la persistencia de datos. Es una de las implementaciones JPA más utilizadas.
Se define en javax.persistencia paquete. Se define en org.hibernar paquete.
El EntityManagerFábrica La interfaz se utiliza para interactuar con la fábrica del administrador de entidades para la unidad de persistencia. Por tanto, proporciona un administrador de entidad. Usa Fábrica de sesiones interfaz para crear instancias de sesión.
Usa Administrador de entidades interfaz para crear, leer y eliminar operaciones para instancias de clases de entidad asignadas. Esta interfaz interactúa con el contexto de persistencia. Usa Sesión interfaz para crear, leer y eliminar operaciones para instancias de clases de entidad asignadas. Se comporta como una interfaz de ejecución entre una aplicación Java e Hibernate.
Usa Lenguaje de consulta de persistencia de Java (JPQL) como lenguaje de consulta orientado a objetos para realizar operaciones de bases de datos. Usa Hibernar lenguaje de consulta (HQL) como lenguaje de consulta orientado a objetos para realizar operaciones de bases de datos.