Hibernate

Páginas: 14 (3420 palabras) Publicado: 3 de abril de 2011
1.0 DEFINICION DE HIBERNATE

Hibernate es una herramienta para la plataforma Java que facilita el mapeo de atributos entre una base de datos relacional y el modelo de objetos de una aplicación, mediante archivos declarativos (XML) que permiten establecer estas relaciones.
Hibernate es una herramienta ORM completa que ha conseguido en un tiempo record una excelente reputación en la comunidad dedesarrollo posicionándose claramente como el producto OpenSource líder en este campo gracias a sus prestaciones, buena documentación y estabilidad. Es valorado por muchos incluso como solución superior a productos comerciales dentro de su enfoque, siendo una muestra clara de su reputación y soporte la reciente integración dentro del grupo JBoss que seguramente generará iniciativas muyinteresantes para el uso de Hibernate dentro de este servidor de aplicaciones.
Se empezó a desarrollar hace algo más de 2 años por Gavin King siendo hoy Gavin y Christian Bauer los principales gestores de su desarrollo.
Hibernate parte de una filosofía de mapear objetos Java "normales", también conocidos en la comunidad como "POJOs" (Plain Old Java Objects), no contempla la posibilidad de automatizardirectamente la persistencia de Entity Beans tipo BMP (es decir, generar automáticamente este tipo de objetos), aunque aún así es posible combinar Hibernate con este tipo de beans utilizando los conocidos patrones para la delegación de persistencia en POJOs.
Una característica de la filosofía de diseño de Hibernate ha de ser destacada especialmente, dada su gran importancia: puede utilizar los objetosJava definidos por el usuario tal cual, es decir, no utiliza técnicas como generación de código a partir de descriptores del modelos de datos o manipulación de bytecodes en tiempo de compilación (técnica conocida por su amplio uso en JDO), ni obliga a implementar interfaces determinados, ni heredar de una superclase. Utiliza en vez de ello el mecanismo de reflexión de Java, característica que lepermite un modelado iterativo fluido y natural basado en UML, un factor fundamental para lograr un trabajo ágil y productivo. Además abre las puertas a utilizar herencia en el modelo de datos (esta opción estaría limitada si una herramienta nos obliga a que los objetos de datos hereden de una superclase por no soportar Java herencia múltiple).

Hibernate – Características

• No intrusivo(estilo POJO)
• Muy buena documentación (forums para ayuda, libro)
• Comunidad activa con muchos usuarios
• Transacciones, caché, asociaciones, polimorfismo, herencia, lazy loading, persistencia transitiva, estrategias de fetching.
• Potente lenguaje de consulta (HQL): subqueries, outer joins, ordering, proyeccion (report query), paginacion.
• Facil testeo.
• No es estandard.

¿Por quénecesitamos Hibernate?

[pic]
Si se esta trabajando con programación orientada a objetos y bases de datos relacionales, seguramente habrás observado que estos son dos paradigmas diferentes.
El modelo relacional trata con relaciones, tuplas y conjuntos y es muy matemático por naturaleza. Sin embargo, el paradigma orientado a objetos trata con objetos, sus atributos y relaciones entre objetos.Cuando se quiere hacer que los objetos sean persistentes utilizando para ello una base de datos relacional, uno se da cuenta de que hay una desavenencia entre estos dos paradigmas, la también llamada diferencia objeto-relacional (object – relational gap”). Un mapeador objeto-relacional (ORM ) nos ayudará a evitar esta diferencia.
¿Cómo se manifiesta esta brecha entre ambos paradigmas? Si estamosutilizando objetos en nuestra aplicación y en algún momento queremos que sean persistentes, normalmente abriremos una conexión JDBC, crearemos una sentencia SQL y copiaremos todos los valores de las propiedades sobre una PreparedStatement o en la cadena SQL que estemos construyendo. Esto podría ser fácil para un objeto de tipo valor (value object:VO) de pequeño tamaño pero consideremos esto para...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • HIBERNATE
  • Hibernate
  • hibernate
  • Hibernate
  • Tutorial Hibernate
  • Hibernate referencia
  • Hibernate
  • Practica Hibernate

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS