Spring ORM Mayer Horna García 15 de Marzo de 2010 [email_address] [email_address] http://www.linkedin.com/in/mayerhorna ht...
Objetivos <ul><li>Entender:  </li></ul><ul><ul><li>Que es Spring ORM </li></ul></ul><ul><ul><li>Que es Hibernate </li></ul...
Agenda <ul><li>Spring ORM </li></ul><ul><li>Evolución del código para acceso a datos </li></ul><ul><li>¿Por qué usar un OR...
Spring ORM
Spring ORM
Recordando JDBC Evolución …
Se ve mejor con con Spring - JDBC
Se  ve  mucho mejor con el soporte de spring para hibernate
¿Porqué usar un ORM(Object/Relational Mapping) en nuestra aplicación? <ul><li>Una parte importante de cualquier aplicación...
¿Qué es Hibernate? <ul><li>Es un ORM para habilitar la persistencia de POJOs. </li></ul><ul><ul><li>Te permite trabajar si...
<ul><li>Permite a los desarrolladores centrarse en el modelamiento de dominio. </li></ul><ul><li>Performance. </li></ul><u...
Arquitectura de Hibernate
Demos de Introducción a Hibernate * Persiste una Bean Evento en tabla evento: Proyecto:    - 00HibernateGrabarEvento
Demos de Introducción a Hibernate * Estrategias para Generación de Claves Primarias: Proyectos:    - 01HibernateGrabarClie...
Demos de Introducción a Hibernate * Mapping  Proyectos:      - 04HibernateManyToOne     - 05HibernateOneToMany     - 06Hib...
Demos de Introducción a Hibernate * Herencia  Proyectos:      -  07HibernateClassHierarchyMappingTablePerSubclass
Demos de Introducción a Hibernate * Consultas a la base de datos con Criteria  Proyectos:      -  08HibernateCriteriaQuery...
Demos de Introducción a Hibernate * Consultas a la base de datos con HQL Proyectos:      -  11HibernateHQLQuery
Integración de Hibernate con Spring: Necesitamos crear un bean sessionFactory que depende del bean dataSource, el cual esp...
Demos de Integración Hibernate-Spring * Proyecto Spring sin Hibernate:      -  hibernate_and_spring-start
Demos de Integración Hibernate-Spring * Proyecto Spring con Hibernate:      -  hibernate_and_spring-solution
Links de referencia <ul><li>Web oficial de hiberante </li></ul><ul><ul><li>https://www.hibernate.org/ </li></ul></ul><ul><...
Preguntas
Gracias Mayer Horna García [email_address] [email_address] http://www.linkedin.com/in/mayerhorna http://mayerhorna.blogspo...
Upcoming SlideShare
Loading in...5
×

Spring ORM

3,280

Published on

Ponencia: Hibernate y Spring ORM - Mayer Horna

Published in: Technology, Travel
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,280
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
137
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Spring ORM

  1. 1. Spring ORM Mayer Horna García 15 de Marzo de 2010 [email_address] [email_address] http://www.linkedin.com/in/mayerhorna http://mayerhorna.blogspot.com @mayerhorna http://osum.sun.com/group/springperu http://spring.pe
  2. 2. Objetivos <ul><li>Entender: </li></ul><ul><ul><li>Que es Spring ORM </li></ul></ul><ul><ul><li>Que es Hibernate </li></ul></ul><ul><ul><li>La importancia de Hibernate </li></ul></ul><ul><ul><li>Como se integra Hibernate con Spring Framework </li></ul></ul>
  3. 3. Agenda <ul><li>Spring ORM </li></ul><ul><li>Evolución del código para acceso a datos </li></ul><ul><li>¿Por qué usar un ORM? </li></ul><ul><li>¿Qué es Hibernate? </li></ul><ul><li>¿Por qué usar Hibernate? </li></ul><ul><li>Demos con Hibernate </li></ul><ul><li>Demo con integración de Hibernate y Spring </li></ul>
  4. 4. Spring ORM
  5. 5. Spring ORM
  6. 6. Recordando JDBC Evolución …
  7. 7. Se ve mejor con con Spring - JDBC
  8. 8. Se ve mucho mejor con el soporte de spring para hibernate
  9. 9. ¿Porqué usar un ORM(Object/Relational Mapping) en nuestra aplicación? <ul><li>Una parte importante de cualquier aplicación es la capa de persistencia. </li></ul><ul><ul><li>Poder acceder y manipular data de una base de datos relacional. </li></ul></ul><ul><li>ORM se encarga del problema Objetos-BD Relacional: </li></ul><ul><ul><li>La data vive en el base de datos relacional, la cual es manejado por tablas(con registros y columnas). </li></ul></ul><ul><ul><li>Nosotros queremos trabajar con objetos , no con registros y columnas de tablas. </li></ul></ul>
  10. 10. ¿Qué es Hibernate? <ul><li>Es un ORM para habilitar la persistencia de POJOs. </li></ul><ul><ul><li>Te permite trabajar sin verte limitado por el modelo de datos relacional. Lo que busca es crear una base de datos orientada a objetos. </li></ul></ul><ul><li>Te permite crear objetos persistentes siguiendo los conceptos de programación OO </li></ul><ul><ul><li>Asociación. </li></ul></ul><ul><ul><li>Herencia. </li></ul></ul><ul><ul><li>Polimorfismo. </li></ul></ul><ul><ul><li>Composición. </li></ul></ul><ul><ul><li>Collection API para “many” relationship </li></ul></ul>
  11. 11. <ul><li>Permite a los desarrolladores centrarse en el modelamiento de dominio. </li></ul><ul><li>Performance. </li></ul><ul><ul><li>Caché de objetos de alto rendimiento. </li></ul></ul><ul><ul><li>Configurable formas de cómo plantear estrategias de persistencia. </li></ul></ul><ul><li>Sofisticadas facilidades para las consultas </li></ul><ul><ul><li>Criteria API </li></ul></ul><ul><ul><li>Query By Example (QBE) </li></ul></ul><ul><ul><li>Hibernate Query Language (HQL) </li></ul></ul><ul><ul><li>Native SQL </li></ul></ul>¿Por qué usar Hibernate?
  12. 12. Arquitectura de Hibernate
  13. 13. Demos de Introducción a Hibernate * Persiste una Bean Evento en tabla evento: Proyecto: - 00HibernateGrabarEvento
  14. 14. Demos de Introducción a Hibernate * Estrategias para Generación de Claves Primarias: Proyectos: - 01HibernateGrabarClienteKeyByIncrement - 02HibernateGrabarClienteKeyBySequence - 03HibernateGrabarClienteKeyByExternalClass
  15. 15. Demos de Introducción a Hibernate * Mapping Proyectos: - 04HibernateManyToOne - 05HibernateOneToMany - 06HibernateManyToMany
  16. 16. Demos de Introducción a Hibernate * Herencia Proyectos: - 07HibernateClassHierarchyMappingTablePerSubclass
  17. 17. Demos de Introducción a Hibernate * Consultas a la base de datos con Criteria Proyectos: - 08HibernateCriteriaQueryWithRestriction - 09HibernateCriteriaQueryProjection - 10HibernateCriteriaQueryFetchModes
  18. 18. Demos de Introducción a Hibernate * Consultas a la base de datos con HQL Proyectos: - 11HibernateHQLQuery
  19. 19. Integración de Hibernate con Spring: Necesitamos crear un bean sessionFactory que depende del bean dataSource, el cual especifica con base de datos se va a trabajar. En el bean sessionFactory, se indica donde están los archivos de mapeo (*.hbm.xml ). y de este dependen los componentes de acceso a datos (Daos):
  20. 20. Demos de Integración Hibernate-Spring * Proyecto Spring sin Hibernate: - hibernate_and_spring-start
  21. 21. Demos de Integración Hibernate-Spring * Proyecto Spring con Hibernate: - hibernate_and_spring-solution
  22. 22. Links de referencia <ul><li>Web oficial de hiberante </li></ul><ul><ul><li>https://www.hibernate.org/ </li></ul></ul><ul><li>API de hibernate 3 </li></ul><ul><ul><li>https://www.hibernate.org/hib_docs/v3/api/ </li></ul></ul><ul><li>Hibernate Reference Documentantion </li></ul><ul><ul><li>http://docs.jboss.org/hibernate/stable/core/reference/en/html/ </li></ul></ul>
  23. 23. Preguntas
  24. 24. Gracias Mayer Horna García [email_address] [email_address] http://www.linkedin.com/in/mayerhorna http://mayerhorna.blogspot.com @mayerhorna http://osum.sun.com/group/springperu http://spring.pe
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×