Spring Portfolio dans les applications d’entreprise TechDay CCJ Arrow Octobre 2008
Road map Application d’entreprise typique Spring Portfolio Spring framework  IOC/AOP: les bases de Spring Spring Web Flow Spring WebService Spring Security Spring Batch Spring Dynamic modules Spring Integration What else?
Modèle d’application d’entreprise Multitude de protocoles, d’aspects, de technos,… WEB (mvc, jsf,…) Business (invoke http, ws, jms, EJB…) JTA WS,JSM,JMX, EJB.. DAO (ORM, Jdbc,..) sécurité logging validation Intégration (EAI, ESB) cache Batch RCP (swing, awt) Conteneur léger (IOC/AOP) OSGI container
Spring Portfolio: l’équipe Spring   Framework Spring  Web  Flow Spring  Web Services Spring   Security  ( Acegi   Security ) Spring   Dynamic  Modules For  OSGi ( tm ) Service  Platforms Spring  Batch Spring   Integration Spring  LDAP Spring  IDE Spring  Modules Spring   JavaConfig Spring   Rich  Client Spring  .NET Spring   BeanDoc
Spring framework www.springframework.com Version 2.5.5 (bientôt la version 3) Très bien documenté Support très réactif Open source & free, mais … nouvelle licence à partir de la nouvelle version
Spring framework OSGI container WEB (mvc, jsf,…) Business (invoke http, ws, jms, EJB…) JTA WS,JSM,JMX, EJB.. DAO (ORM, Jdbc,..) sécurité logging validation Intégration (EAI, ESB) cache Batch Conteneur léger (IOC/AOP) RCP (swing, awt)
Les concepts de base de «Spring»: AOP/IOC/PSA
Les concepts de base de «Spring»: AOP/IOC/PSA Tous les projets spring ont le même esprit Modularité Portabilité Système « Lego »: forte abstraction Découplage des dépendances Même cœur utilisé partout Fabrique de bean Conteneur de bean
IOC: Injection de dépendances
IOC: Injection de dépendances
AOP: programmation par aspect Aspect Oriented Programming Logging Gestion de transaction Validation Exception Handling Cache Proxy / interceptor AspectJ (version 2)
Spring Web Flow http://www.springframework.org/webflow 2 versions, et 2 distributions différentes Système de gestion de flow Créer des wizards sur des pages web Basé sur des diagrammes d’état/transition
Spring Web Flow
Spring Web Flow: nouvelle distribution
Spring Web Service http://www.springframework.org/spring-ws Contract first WS generator Concurrents: Axis 1/2 , Xfire Architecture proche de spring mvc
Spring Security http://static.springframework.org/spring-security/site/index.html Acegi Security Facilité d’intégration avec Spring MVC, Spring WS, Spring WF Riches en fonctionnalités !!!!!config compliquée!!!!!
Spring Batch http://static.springframework.org/spring-batch/ Encore à sa première version Résoudre les problèmes classiques des batch: Flux important de données Aspect transactionnel Relance en cas d’échec
Spring Batch
Spring Dynamic Modules http://www.springframework.org/osgi Permet de développer des applications modulaires OSGI application Basé sur equinox (implémentation de référence de OSGI)
Spring Integration http://www.springframework.org/spring-integration ESB Intégration des applications d’entreprise via différents protocoles
What else? RAD (Rapid Application Developpment): spring 2 supporte JRuby Groovy
Conclusion Simple et puissant Bien documenté Plus qu’un simple « spring framework » Idéale pour développer une application d’entreprise Il touche aux différents aspects et couches de l’application
Références http://video.google.com/videoplay?docid=6852783793274783146 http://www.cjugaustralia.org/slides/june2007/spring_portfolio.pdf http://www.websphereusergroup.org.uk/uploadedfiles/misc/spring070227.pdf http:// skillsmatter.com / downloads /RodJohnson_SpringeXchange2008.pdf

Building Entreprise App With Spring Portfolio

  • 1.
    Spring Portfolio dansles applications d’entreprise TechDay CCJ Arrow Octobre 2008
  • 2.
    Road map Applicationd’entreprise typique Spring Portfolio Spring framework IOC/AOP: les bases de Spring Spring Web Flow Spring WebService Spring Security Spring Batch Spring Dynamic modules Spring Integration What else?
  • 3.
    Modèle d’application d’entrepriseMultitude de protocoles, d’aspects, de technos,… WEB (mvc, jsf,…) Business (invoke http, ws, jms, EJB…) JTA WS,JSM,JMX, EJB.. DAO (ORM, Jdbc,..) sécurité logging validation Intégration (EAI, ESB) cache Batch RCP (swing, awt) Conteneur léger (IOC/AOP) OSGI container
  • 4.
    Spring Portfolio: l’équipeSpring Framework Spring Web Flow Spring Web Services Spring Security ( Acegi Security ) Spring Dynamic Modules For OSGi ( tm ) Service Platforms Spring Batch Spring Integration Spring LDAP Spring IDE Spring Modules Spring JavaConfig Spring Rich Client Spring .NET Spring BeanDoc
  • 5.
    Spring framework www.springframework.comVersion 2.5.5 (bientôt la version 3) Très bien documenté Support très réactif Open source & free, mais … nouvelle licence à partir de la nouvelle version
  • 6.
    Spring framework OSGIcontainer WEB (mvc, jsf,…) Business (invoke http, ws, jms, EJB…) JTA WS,JSM,JMX, EJB.. DAO (ORM, Jdbc,..) sécurité logging validation Intégration (EAI, ESB) cache Batch Conteneur léger (IOC/AOP) RCP (swing, awt)
  • 7.
    Les concepts debase de «Spring»: AOP/IOC/PSA
  • 8.
    Les concepts debase de «Spring»: AOP/IOC/PSA Tous les projets spring ont le même esprit Modularité Portabilité Système « Lego »: forte abstraction Découplage des dépendances Même cœur utilisé partout Fabrique de bean Conteneur de bean
  • 9.
    IOC: Injection dedépendances
  • 10.
    IOC: Injection dedépendances
  • 11.
    AOP: programmation paraspect Aspect Oriented Programming Logging Gestion de transaction Validation Exception Handling Cache Proxy / interceptor AspectJ (version 2)
  • 12.
    Spring Web Flowhttp://www.springframework.org/webflow 2 versions, et 2 distributions différentes Système de gestion de flow Créer des wizards sur des pages web Basé sur des diagrammes d’état/transition
  • 13.
  • 14.
    Spring Web Flow:nouvelle distribution
  • 15.
    Spring Web Servicehttp://www.springframework.org/spring-ws Contract first WS generator Concurrents: Axis 1/2 , Xfire Architecture proche de spring mvc
  • 16.
    Spring Security http://static.springframework.org/spring-security/site/index.htmlAcegi Security Facilité d’intégration avec Spring MVC, Spring WS, Spring WF Riches en fonctionnalités !!!!!config compliquée!!!!!
  • 17.
    Spring Batch http://static.springframework.org/spring-batch/Encore à sa première version Résoudre les problèmes classiques des batch: Flux important de données Aspect transactionnel Relance en cas d’échec
  • 18.
  • 19.
    Spring Dynamic Moduleshttp://www.springframework.org/osgi Permet de développer des applications modulaires OSGI application Basé sur equinox (implémentation de référence de OSGI)
  • 20.
    Spring Integration http://www.springframework.org/spring-integrationESB Intégration des applications d’entreprise via différents protocoles
  • 21.
    What else? RAD(Rapid Application Developpment): spring 2 supporte JRuby Groovy
  • 22.
    Conclusion Simple etpuissant Bien documenté Plus qu’un simple « spring framework » Idéale pour développer une application d’entreprise Il touche aux différents aspects et couches de l’application
  • 23.
    Références http://video.google.com/videoplay?docid=6852783793274783146 http://www.cjugaustralia.org/slides/june2007/spring_portfolio.pdfhttp://www.websphereusergroup.org.uk/uploadedfiles/misc/spring070227.pdf http:// skillsmatter.com / downloads /RodJohnson_SpringeXchange2008.pdf