1. Persistencia de objetos
驴Qu茅 es la persistencia?
Definici贸n
Bases de datos relacionales
Archivos planos
Modelo relacional vs. Modelo oo
Problem谩tica
Una tabla, una clase
El problema de la herencia
El problema de la identidad
El problema de las asociaciones
El problema de la navegaci贸n
驴Qu茅 es orm?
Definici贸n
Organizaci贸n
Ventajas
Tecnolog铆as orm
User-defined daos
Ejb entity beans
Jpa (java persistence api)
Hibernate
La necesidad de una dal (data access layer)
Arquitectura multicapa (n-tier architecture)
驴Qu茅 es dal?
驴Qu茅 es pojo?
Ventajas de una arquitectura multi-capa
2. Configuraci贸n de hibernate
Introducci贸n
Jars necesarios
Archivos binarios
Hibernate3.jar
Otros .jar necesarios
Jdbc driver .jar
Links
Documentaci贸n
3. Introducci贸n a un proyecto con hibernate
Configuraci贸n
Jerarqu铆a de directorios
La conexi贸n con la base de datos
Propiedades de hibernate
Introducci贸n
Hibernate.connection.driver_class
Hibernate.connection.url
Hibernate.connection.username
Hibernate.connection.password
Hibernate.dialect
Los dialectos disponibles
Ejemplo el archivo hibernate.properties
Configuraci贸n del rdbms
MySQL como rdbms
Creaci贸n de base de datos y tablas
Creaci贸n de un pojo
驴Qu茅 es un pojo?
Caracter铆sticas de un pojo
Ejemplo de un pojo
Creaci贸n de un xml mapper
驴Qu茅 es?
El archivo .hbm.xml
El tag
El tag
El tag
El tag
El tag
Creaci贸n de una clase tester
La clase testautos
La interfaz org.hibernate.session
Registraci贸n de propiedades y mappers
驴C贸mo realizar una inserci贸n?
驴C贸mo realizar una consulta?
驴C贸mo realizar una actualizaci贸n?
驴C贸mo realizar una eliminaci贸n
4. Interfaces / loggins / sesiones
La clase org.hibernate.cfg.configuration
La interfaz org.hibernate.sessionfactory
La interfaz org.hibernate.session
La interfaz org.hibernate.query
La interfaz org.hibernate.transaction
El paquete org.hibernate.classic
Logging
驴Qu茅 es?
El archivo log4j.properties
La propiedad hibernate.show_SQL
Administraci贸n de sesiones
驴Qu茅 es un singleton?
驴Por qu茅 utilizar un singleton?
Utilizaci贸n
5. Hql: hibernate query language
Que es
驴Por qu茅 utilizarlo?
Cl谩usulas
From
Select
Where
Group by
Order by
Utilizacion de funciones
Introduccion
Count
Sum
Avg
Max
Min
Consultas SQL nativas
Que es una consulta nativa
El m茅todo createSQLquery()
Valores por par谩metro
Paginaci贸n
Definici贸n
El m茅todo setmaxresults()
El m茅todo setfirstresult()
Named queries
Que es un named query
El named query mapping
El m茅todo getnamedquery()
6. Mapeo de herencia de clases
Problem谩tica
Soluciones
Una tabla por clase concreta
Una tabla por subclase
Una tabla por jerarqu铆a de clases
7. Transacciones
La interfaz org.hibernate.transaction
Que significa transparent write behind
El metodo load()
El metodo get()
El m茅todo begintransaction()
El m茅todo flush()
El m茅todo setflushmode()
El m茅todo commit()
El m茅todo rollback()
Utilizaci贸n de rollback() y commit()
8. Asociaciones
One-to-many/many to one
Mapped by
Cascading
Fetching
One-to-one
Many to many
9. Herramientas complementarias
Introducci贸n
Andromda
Xdoclet
Schemaexport (hbm2ddl)
Middlegen
Codegenerator (hbm2java)
10. Laboratorios
Hola mundo con hibernate
Persistiendo un concesionario
Manejando hql
Queries parametrizadas
Paginaci贸n
Namedqueries
Manejo de herencia
Asociaciones
Proyecto integrador