La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Persistencia de Objetos. Definicion Persistencia : El la capacidad de un objecto to continuar existiendo despues que su creador (programa que crea este)

Presentaciones similares


Presentación del tema: "Persistencia de Objetos. Definicion Persistencia : El la capacidad de un objecto to continuar existiendo despues que su creador (programa que crea este)"— Transcripción de la presentación:

1 Persistencia de Objetos

2 Definicion Persistencia : El la capacidad de un objecto to continuar existiendo despues que su creador (programa que crea este) deja de existir.

3 3 A grafica idea de persistencia Program start Program execution Time Program start Program end Object creation Object edition Program end Object Lifetime “…object outlives the execution of the program…”

4 4 Persistencia de Objectos Datos que existen entre varias ejecuciones de un programa Datos que existen entre varias versiones de un programa Program Q Time Read / Write Program P Time Objects repository

5 Java Database Connectivity (JDBC) Java Database Connectivity, más conocida por sus siglas JDBC, es una API que permite la ejecución de operaciones sobre bases de datos desde el lenguaje de programación Java, independientemente del sistema operativo donde se ejecute o de la base de datos a la cual se accede, utilizando el dialecto SQL del modelo de base de datos que se utilice. El API JDBC se presenta como una colección de interfaces Java y métodos de gestión de manejadores de conexión hacia cada modelo específico de base de datos. Un manejador de conexiones hacia un modelo de base de datos en particular es un conjunto de clases que implementan las interfaces Java y que utilizan los métodos de registro para declarar los tipos de localizadores a base de datos (URL) que pueden manejar.

6 JDBC Arquitectura

7 Paquete java.sql JDBC ofrece el paquete java.sql, en el que existen clases muy útiles para trabajar con bases de datos. ClaseDescription DriverManagerPara cargar un driver ConnectionPara establecer conexiones con las bases de datos StatementPara crear consultas SQL y enviarlas a las BBDD ResultSetPara almacenar el resultado de la consulta

8 Controladores JDBC Los controladores JDBC son adaptadores del lado-cliente (se instalan en la máquina cliente, no en el servidor) para convertir las peticiones desde los programas Java a un protocolo que pueda entender DBMS. Tipos Existen controladores comerciales y libre para la mayoría de las bases de datos relacionales y pueden ser de cuatro tipos: TipoDescription Tipo 1Puente JDBC-ODBC Tipo 2Controlador nativo de la API Tipo 3Controlador de protocolo de red Tipo 4Controlador de protocolo de red

9 Hibernate Hibernate es una herramienta de Mapeo objeto-relacional para la plataforma Java (y disponible también para.Net con el nombre de NHibernate) que facilita el mapeo de atributos entre una base de datos relacional tradicional y el modelo deobjetos de una aplicación, mediante archivos declarativos (XML) que permiten establecer estas relaciones.

10 Arquitectura El diagrama a continuación brinda una perspectiva a alto nivel de la arquitectura de Hibernate:

11 Arquitectura Detallada

12 SessionFactory (org.hibernate.SessionFactory) Un caché threadsafe (inmutable) de mapeos compilados para una sola base de datos. Una fábrica de Session y un cliente de ConnectionProvider, SessionFactory puede mantener un caché opcional (de segundo nivel) de datos reusables entre transacciones a nivel de proceso o de clúster. Session (org.hibernate.Session) Un objeto mono-hebra, de corta vida que representa una conversación entre la aplicación y el almacenamiento persistente. Envuelve una conexión JDBC y es una fábrica de Transaction. Session mantiene un caché requerido de primer nivel de objetos persistentes, que se utiliza cuando se navega el gráfico de objetos o mientras se buscan objetos por identificador. Objetos y colecciones persistentes Objetos de corta vida, mono-hebra contienen un estado persistente así como una funcionalidad empresarial. Estos pueden ser JavaBeans/POJOs normales. Estos se encuentran asociados con exactamente una Session. Tan pronto como la Session se cierre, serán separados y estarán libres para utilizarlos en cualquier capa de aplicación, (por ejemplo, directamente como objetos de transferencia de datos hacia y desde la presentación).

13 Objetos y colecciones transitorios y separados: Instancias de clases persistentes que no se encuentran actualmente asociadas con una Session. Pueden haber sido instanciadas por la aplicación y aún no haber sido persistidas, o pueden haber sido instanciadas por una Session cerrada. Transaction (org.hibernate.Transaction) (Opcional) Un objeto de corta vida, mono-hebra que la aplicación utiliza para especificar unidades atómicas de trabajo. Abstrae la aplicación de las transacciones subyacentes JDBC, JTA o CORBA. En algunos casos, una Session puede extenderse sobre varias Transactiones. Sin embargo, la demarcación de la transacción, ya sea utilizando la API subyacente o Transaction, nunca es opcional. ConnectionProvider (org.hibernate.connection.ConnectionProvider) (Opcional) Una fábrica y pool de conexiones JDBC. Abstrae a la aplicación del Datasource oDriverManager subyacente. No se expone a la aplicación, pero puede ser extendido/implementado por el desarrollador.

14 TransactionFactory (org.hibernate.TransactionFactory) (Opcional) Una fábrica de instancias de Transaction. No se expone a la aplicación pero puede ser extendido/implementado por el desarrollador. Extension Interfaces Hibernate ofrece un rango de interfaces de extensión opcionales que puede implementar para personalizar el comportamiento de su capa de persistencia. Para obtener más detalles, vea la documentación de la API.

15 Archivo de Mapeo Hibernate necesita saber cómo cargar y almacenar objetos de la clase persistente. En este punto es donde entra en juego el archivo de mapeo de Hibernate. Este archivo le dice a Hibernate a que tabla tiene que acceder en la base de datos, y que columnas debe utilizar en esta tabla. http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/tutorial.html#tutorial-associations http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/tutorial.html#tutorial-associations http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/mapping.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/mapping.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/collections.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/collections.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/associations.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/associations.html

16 Configuración de Hibernate Para la configuración de Hibernate, podemos utilizar un archivo hibernate.properties simple, un archivohibernate.cfg.xml un poco más sofisticado, o incluso una configuración completamente programática. La mayoría de los usuarios prefieren el archivo de configuración XML: http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/session-configuration.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/session-configuration.html

17 Consultas en Hibernate http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/objectstate.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/objectstate.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/queryhql.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/queryhql.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/querysql.html http://docs.jboss.org/hibernate/stable/core/reference/es- ES/html/querysql.html


Descargar ppt "Persistencia de Objetos. Definicion Persistencia : El la capacidad de un objecto to continuar existiendo despues que su creador (programa que crea este)"

Presentaciones similares


Anuncios Google