La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

© Softtek 2009. Internal. Introducción a Spring Sesión 1: Introducción y teoría Juan Irungaray

Presentaciones similares


Presentación del tema: "© Softtek 2009. Internal. Introducción a Spring Sesión 1: Introducción y teoría Juan Irungaray"— Transcripción de la presentación:

1 © Softtek 2009. Internal. Introducción a Spring Sesión 1: Introducción y teoría Juan Irungaray juan.irungaray@softtek.com

2 © Softtek 2009. Internal. Agenda Introducción Componentes de Spring Inversión de control / Inyección de dependencias Configurando Spring: Metadata Instanciando un Bean Dependencias Autowiring Scopes Herencia

3 © Softtek 2009. Internal. Introducción Aplicaciones OO Arquitecturas variadas Complejidades variadas Gran cantidad de herramientas, frameworks y librerías Spring Facilita la construcción de aplicaciones Promueve el uso de buenas practicas Arquitectura probada, madura y estable Facilidad de extensión y customización

4 © Softtek 2009. Internal. Componentes de Spring

5 © Softtek 2009. Internal. Inversión de control Metadata Container Spring (BeanFactory) Objetos listos para usar Objetos de negocio (POJOs)

6 © Softtek 2009. Internal. Metadata

7 © Softtek 2009. Internal. Constructor Se especifica la clase del objeto con el atributo “class” El objeto creado es una instancia de esta clase Instanciando un Bean - Constructor

8 © Softtek 2009. Internal. Instanciando un Bean - Factory Factory – Método de clase Se especifica la clase Factory con el atributo “class” Se especifica el método que construye con el atributo “factory-method” Factory – Método de instancia No se define atributo “class” Se especifica el nombre de la instancia de Factory con el atributo “factory-bean” Se especifica el método que construye con el atributo “factory-method”

9 © Softtek 2009. Internal. Dependencias Inyección de dependencias Argumento del constructor Argumento del método factory Propiedades a ser insertadas Valores posibles Valores directos Colaboradores Beans internos Colecciones (List, Set, Map, Properties) Null

10 © Softtek 2009. Internal. Autowiring Se puede configurar particular en el elemento o en general en el elemento Reduce la necesidad de especificar alguna propiedades o argumentos de constructores. Facilita el mantenimiento y la “evolución automática” de la configuración. Configuraciones posibles No byName byType Constructor Autodetect Una propiedad o argumento especificado siempre tiene prioridad sobre un valor “autowired”

11 © Softtek 2009. Internal. Scopes Configuran como maneja Spring las instancias de una clase Existen 5 valores out of the box: Singleton Prototype Request (Solo para aplicaciones web) Session (Solo para aplicaciones web) Global Session (Solo para aplicaciones web-portlet)

12 © Softtek 2009. Internal. Herencia Permite extender y reutilizar definiciones de beans Bean Padre Bean Hijo La herencia de beans no representa ninguna relación entre los objetos que estos beans generan

13 © Softtek 2009. Internal. Repaso Spring es un framework líder, utilizado por empresas de todo tamaño. Spring permite componer una aplicación utilizando únicamente POJOs Facilita la integración entre tecnologías. Es una implementación de mejores practicas de programación. Esta diseñado para utilizar únicamente lo que uno necesita. Facilita la codificación y mejora la mantenibilidad de la aplicación(DI). Desacopla la lógica de la configuración.

14 © Softtek 2009. Internal. Agenda @nnotations Capa de acceso de datos DAO Support Utilizando JDBC Integración con ORMs (Hibernate) Web MVC Framework Controllers Handler Mappings View Resolvers Integracion con Struts

15 © Softtek 2009. Internal. @nnotations @Required@Autowired@Component, @Service, @Repository & @Controller@Resource @PostConstruct & @PreDestroy

16 © Softtek 2009. Internal. DAO Support Facilitar el acceso a tecnologías como JDBC, Hibernate, o JDO Provee una jerarquía de Excepciones consistente Provee clases homologas para acceder a las diferentes tecnologías JdbcDaoSupport HibernateDaoSupport JdoDaoSupport JpaDaoSupport

17 © Softtek 2009. Internal. DAO - JDBC Tareas necesarias en una conexión JDBC: 1. Definir parámetro de conexión 2. Abrir la conexión 3. Especificar un Statement 4. Preparar y ejecutar dicho Statement 5. Iterar sobre los resultados obtenidos 6. Hacer la tarea necesaria para cada iteracion del resultado 7. Manejar excepciones 8. Manejar transacciones 9. Cerrar conexión

18 © Softtek 2009. Internal. ORM Facilidad de testing Excepciones traducidas Manejo de recursos generales Manejo de transacciones integrados

19 © Softtek 2009. Internal. Hibernate HibernateTemplateHibernateDaoSupport

20 © Softtek 2009. Internal. Web MVC El archivo de contexto se debe llamar -servlet.xml y encontrarse en el directorio WEB-INF

21 © Softtek 2009. Internal. Web MVC framework Separación clara de roles Configuración de framework y aplicación a través de JavaBeans Adaptabilidad (No intrusivo) Reutilización de código de negocio Validación y binding customizables Mapeo de URLs y resolución de vistas customizable Soporte I18N Beans con Scope vinculados a request o sesiones HTTP. Controller Handler Mappings View Resolvers Locale Resolvers Theme Resolvers Multipart File Resolvers Exception Handler Resolvers

22 © Softtek 2009. Internal. Controllers Interpretan el input del usuario y lo transforman en un modelo a ser representado por la vista MultiActionController AbstractCommandController AbstractFormController SimpleFromController AbstractWizardFormController Utilizando la annotation @Controller se puede utilizar cualquier clase como controller, no hace implementar o extender de nada

23 © Softtek 2009. Internal. Handler Mappings SimpleUrlHandlerMappingBeanNameUrlHandlerMapping El uso de handlerMappings se puede obviar utilizando annotations. Aunque se pueden combinar ambos estilos no es recomendado.

24 © Softtek 2009. Internal. View Resolvers AbstractCachingViewResolver XmlViewResolver ResourceBundleViewResolver UrlBasedViewResolver InternalResourceViewResolver VelocityViewResolver / FreeMarkerViewResolver

25 © Softtek 2009. Internal. Integracion con Struts Se utiliza Spring como si fuese una librería Para la integración hay 2 estrategias: Configurar Spring para manejar los Actions como Beans Extender ActionSupport

26 © Softtek 2009. Internal. Repaso Spring provee soporte para annotations (Java 5+), no solo para funcionalidad core sino para la capa de datos y la vista. El soporte DAO de Spring se encarga de todas las tareas de bajo nivel El soporte a la capa de datos es totalmente abstracto y se integra con los frameworks mas importantes del mercado La capa de web es totalmente agnóstica de la vista. Permite usar tanto Spring MVC como otros frameworks de manera simple y consistente.

27 © Softtek 2009. Internal. Referencias Spring Home Spring - http://www.springsource.org/http://www.springsource.org/ Documentación - http://static.springsource.org/spring/docs/2.5.x/reference/index.html http://static.springsource.org/spring/docs/2.5.x/reference/index.html

28 © Softtek 2009. Internal. Q & A


Descargar ppt "© Softtek 2009. Internal. Introducción a Spring Sesión 1: Introducción y teoría Juan Irungaray"

Presentaciones similares


Anuncios Google