1. ORM Spring Framework Diego Armando GómezMosquera. dgomez@vortexbird.com dagmosqu@usbcali.edu.co Sun Certified Java Associated. Sun Certified Java Programmer. Sun Certified Web Component Developer. Sun Certified Business Component Developer 5
2. Agenda Arquitectura de Spring Hibernate Spring ORM Spring DAO Spring Transactionmanagement
4. Que es Hibernate Hibernate es un mapeadorobjecto relacional (ORM) que pertenece a la compañía Jboss. Se encarga de persistir objetos en bases de datos relaciones y tiene soporte para una gran variedad de bases de datos DB2 Oracle Postgres MySQL
5. Que es Spring ORM Soporte proporcionado por Spring para integrarse con una gran variedad de Mapeadores objeto relacionales (ORM) JPA Hiberante iBATIS TopLink Apache OJB JDO
6. Spring ORM Spring integrado con un ORM como Hibernate proporciona las siguientes características. Administración de sesiones (HibernateSesion) Administración de recursos (SessionFactory) Administración de transacciones integradas. Administración de DataSource. Envolver excepciones
7. Spring ORM APIs Básicas org.springframework.orm.hibernate3.LocalSessionFactoryBean org.springframework.orm.hibernate3.HibernateTransactionManager
9. Que es Spring DAO Soporte proporcionado por Spring para hacer mas simple la administración de recursos de componentes DAO usando diferentes tecnologías. HibernateDaoSupport JdbcDaoSupport JdoDaoSupport JpaDaoSupport
10. Spring DAO Spring integrado con un ORM como Hibernate y usando el HibernateDaoSupport proporciona. Acceso simple a las sesiones de hibernate. Integración con transacciones administradas por el contenedor de Spring. El método getHibernateTemplate() devuelve un témplate con varios métodos útiles, que simplifican el uso de Hibernate
11. Spring DAO APIs Básicas org.springframework.orm.hibernate.support.HibernateDaoSupport org.springframework.jdbc.core.support.JdbcDaoSupport org.springframework.orm.jdo.support.JdoDaoSuppor org.springframework.orm.jpa.support.JpaDaoSupport
12. Spring DAO @Repository("ClientesDAO") publicclassClientesDAOextendsHibernateDaoSupportimplementsIClientesDAO { privatestatic final Logger log = LoggerFactory.getLogger(ClientesDAO.class); @Autowired publicvoidinit(SessionFactoryfactory) { setSessionFactory(factory); } protectedvoidinitDao() { // do nothing } publicvoidsave(Cliente cliente){ …………. } }
14. Que es Spring Transactionmanagement? Soporte proporcionado por Spring para la administración de transacciones en una aplicación empresarial. Soporte para dos tipos de transacciones Programmatictransactionmanagement Declarativetransactionmanagement Se fundamenta en el uso de aspectos para la configuración de las transacciones.
15. Spring Transactionmanagement Cuenta con un soprte extenso para manejo de transacciones Programatica con JTA Programatica con TransactionTemplate Declarativa con TransactionAdvice Declarativa con @TransactionAnnotation