Hibernate [Parte 1]: Presentación

Septiembre 2017






Hibernate es una capa residente el la JVM que permite asegurar el mapeo de los objetos JAVA ocultos en la JVM en modelos relacionales o modelos de datos. Hibernate permite también la transferencia de clases Java en entidades de datos y por lo tanto la información de objetos en entidades y tablas. Así mismo Hibernate cuenta también con un lenguaje de manipulación de objetos mapeados conocido como HQL. Permite hacer select, Update y Delete en las operaciones de suma, conteo (count), calculo de promedios, etc. Sin embargo, HQL tiene algunas limitaciones, por ejemplo, en el uso de operaciones de Unión.
En su capa más próxima a la base de datos, Hibernate utiliza JDBC (JDBC Template) para comunicarse con la base de datos.
La figura siguiente muestra los componentes de Hibernate utilizando una base de datos y los componentes de configuración para ofrecer al desarrollador JAVA objetos persistentes y asegurar el transporte de datos entre estos objetos y las tablas de la base de datos.


Existen varias herramientas de mapeo relacional/objeto Hibernate en la comunidad Hibernate. Uno de las mas conocidas es Middlegen, cuyo objetivo es el de ayudar al desarrollador a definir de manera completa el mapeo Hibernate.

La sesión Hibernate


Una carga del objeto mapeado (de persistencia) de la base de datos o la actualización (Update, inserción o eliminación) solo se puede hacer si una sesión Hibernate es instanciada. La sesión es una capa representada por la interfaz JAVA org.hibernate.Session
Para un desarrollador de una aplicación JAVA, la actividad Hibernate comienza después de la instrucción
session = sessionFactory.openSession ()


En el que sessionFactory es un objeto creado por la aplicación y utiliza la conexión JDBC (o JNDI).
La actividad Hibernate termina después del llamado del método
session.close ()


Entre estos dos métodos citados anteriormente, una transacción puede ser ejecutada mediante
session.beginTransaction().

Distribución y principales clases e interfaces


La versión 3 de Hibernate puede ser descargada desde Aquí
Los principales jars son los siguientes:
  • Ehcache-1.3.0.jar: Utilizado por hibernate
  • Hibernate-3.2.5.ga.jar: Utilizado por hibernate
  • Hibernate-annotations-3.3.0.ga.jar: Utilizado para la notación jpa
  • Hibernate-commons-annotations-3.3.0.ga.jar: Utilizado para la notación jpa
  • Hibernate-entitymanager.jar: Utilizado para la notación jpa
  • Hibernate-validator-3.0.0.ga.jar: para la capa de validación por hibernate validator (campos obligatorios, length,..)


La clase org.hibernate.cfg.Configuration
El constructor de Configuración utiliza el fichero de configuración de Hibernate (hibernate.cfg.xml.)
La clase
org.hibernate.HibernateException

Prácticamente todos los métodos Hibernate pueden provocar esta excepción.
Interface org.hibernate.SessionFactory
Es la primera instancia creada al llamar:
new org.hibernate.cfg.Configuration ().configure ().buildSessionFactory ();


Permite leer los ficheros hbm (ver parte configuración).
Interface org.hibernate.Session
Interface org.hibernate.Query
Interfaz que permite al desarrollador escribir consultas Hibernate (HQL) utilizando los objetos JAVA de persistencia.
Interface org.hibernate.SQLQuery
Interfaz que permite al desarrollador escribir consultas SQL.
Interface org.hibernate.Transaction
Se trata del objeto transacción de Hibernate teniendo como principales funciones las de commit() y de rollback().

Ver también: [ Hibernate (Parte 2): configuración y uso]

Consulta también

Artículo original escrito por deri58. Traducido por Carlos-vialfa. Última actualización: 9 de noviembre de 2009 a las 02:28 por Carlos-vialfa.
El documento «Hibernate [Parte 1]: Presentación» se encuentra disponible bajo una licencia Creative Commons. Puedes copiarlo o modificarlo libremente. No olvides citar a CCM (es.ccm.net) como tu fuente de información.