javaweb2013

Páginas: 8 (1891 palabras) Publicado: 13 de agosto de 2013
Persistencia de
Objetos con Hibernate

Contexto actual
Actualmente en el mercado existen ya algunas bases de datos
orientadas a objetos pero a nivel comercial no suelen ser una
opción aún. Las empresas buscan el respaldo y la confianza de
productos probados y consolidados a lo largo de un tiempo
aceptable.
Las bases de datos relacionales aún están en su pleno apogeo,
todavía librandoalgunas batallas respecto a su performance
cuando de alto volumen transaccional se habla.

Contexto actual
En los últimos 20 años se ha invertido muchísimo dinero y
esfuerzo en producir bases de datos relacionales en pro de obtener
mayor rendimiento, también se han desarrollado infinitas
herramientas dedicadas a su uso (reporting, modelado,
administración, etc.) mas cientos de miles desistemas que utilizan
las organizaciones de hoy basados en BD relacionales. Esto es un
gran freno para las tecnologías de 00DB.

Contexto actual
De la misma manera los lenguajes orientados a objetos son la
promesa y la alternativa mas elegida a la hora de nuevos desarrollos y
reingenierías de sistemas. De esta forma en los escenarios actuales
se suele trabajar con lenguajes orientados aobjetos y se utilizan
bases de datos relacionales, la combinación de estas tecnologías es
un tema ampliamente discutido y de estas discusiones han surgido
diferentes corrientes arquitectónicas.
Esta mezcla de tecnologías basadas en diferentes paradigmas
plantea vanos problemas importantes:
1. Se debe diseñar un sistema orientado a objetos y la base de datos
debe ser creada en base a estemodelo?
2. Se debe crear un modelo de datos y diseñar un modelo de
objetos dependiente de la estructura de datos?

Posibles soluciones OO
- Clases de acceso.
En este tipo de estrategia y respecto al acceso a datos es
comúnmente asociado con nombres como DAO (Data Access
Object), DAC (Data Access Component). Para el acceso a datos
esta estrategia delega las responsabilidades de acceder ymanejar
el código SQL (tanto en queries simples como en el acceso a Store
procedures) a ciertas clases.
- ORM (Object Relation Mapper)
En este tipo de estrategia o de generación dinámica de SQL, se
basa en archivos de mapeos. Es la estrategia más flexible, usa
frameworks específicos diseñados para tener una mayor
independencia con la DB. Consecuencias de esta estrategia:
Es poco invasiva, nospermite trabajar casi sin cambios en nuestro
modelo.

¿Qué es Hibernate?
-Hibernate es un producto considerado una capa (persistence layer),
framework, u object-relational mapper, tanto para JAVA (Hibernate)
como para .NET (NHibernate) Este producto ya posee un nivel
importante de maduración en el mercado en el orden de los 6 años.
Es provisto por JBOSS, empresa que del grupo RED HAT(proveedora
de una versión Linux con soporte para empresas) brindando una
serie de características adicionales que le permiten mantener un
liderazgo en este tipo de productos junto a los productos de otros
grandes vendors como TOP Link (de Oracle), EJB (nativo de J2EE de
Sun MicroSystem) entre otros.
-Básicamente Hibernate permite desarrollar clases persistentes
basándose en Java y en elparadigma OO (incluyendo asociaciones,
herencias, polimorfismo, composición y las colecciones de
framework Java) sin necesidad de trabajar directamente con la base
de datos y con sql.

¿Qué es Hibernate?
Hibernate es el puente entre nuestra aplicación y la
BBDD, sus funciones van desde la ejecución de
sentencias SQL a través de JDBC hasta la creación,
modificación y eliminación de objetospersistentes.

Clases de
Negocio

Hibernate

Sql

BD

Características
Relaciones 1-1 / Relaciones 1-n / Relaciones n-m.
Inherente a las colecciones de objetos, permite mantener esta
convención de diseño manteniendo independiente su
implementación en la base de datos ya sea teniendo
referencias distintas tablas o a tablas de relación en el caso de
relaciones n-m.
Uni-direccionalidad,...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS