JAVA ENTERPRISE EDITION   ET SON ÉCOSYSTÈME@f_guezlanefguezlane@gmail.com
Ferhat GUEZLANEManager/Fondateur de Algeria JU@f_guezlanefguezlane@gmail.com
PLAN    Qu’est ce que JAVA    Qu’est ce que JEE    L’architecture MVC     Servlet, JSP,JSF           EJBJEE API (JMS,JAAS,...
QUEST CE QUE JAVA ETJEE ?
QUEST CE QUE JAVA?Java Technology   Java Technology   Workgroup   High-EndEnabled Devices   Enabled Desktop    Server     ...
COMMENT SE FAITLÉVOLUTION DE JAVA ?          • (Des sociétés, des associations ou des individus            )Besoins       ...
COMMENT SE FAIT LÉVOLUTION DE JAVA ?Exemple :la JSR 168 est la spécification des portletsdéfinissant le contrat entre les ...
COMMENT SE FAIT LÉVOLUTION DE JAVA ?Le JCP fait la norme JEE.Lindustrie et le monde du libre ne passentpas forcément par l...
QUEST CE QUE JEE ?
QUEST CE QUE JEE ?JEE est la version « entreprise» de Java, elle a pourbut de faciliter le développement dapplicationsdist...
QUEST CE QUE JEE ?JEE est composée de deux parties essentielles :Un  ensemble de spécifications pour uneinfrastructure da...
QUEST CE QUE JEE ? Ces API peuvent être regroupées en trois grandescatégories :les composants : Servlet, JSP, EJBles servi...
QUEST CE QUE JEE ?Ce quil faut retenir :JEE décrit des services techniques pour bâtir desapplications dentreprise.Une appl...
ARCHITECTURE JEE
L’ARCHITECTURE MVCun schéma qui représente bien l’architecture surlaquelle est basée la technologie J2EE
L’ARCHITECTURE MVCLa vueune   application graphique swing, awt …une   page web (JSP,..etc).
L’ARCHITECTURE MVCLe contrôleurpermet de faire le lien entre la vue et le modèlelorsquune interaction utilisateur est surv...
L’ARCHITECTURE MVCLe modèleEn trois mots, il sagit du cœur du programme !
LES SERVLETSLes servlets sont des applications Java quifonctionnent dans un serveur web et qui répondent auxrequêtes HTTP ...
EXEMPLE D’UNE SERVLETimport javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servl...
PUISSANCE DES SERVLETSPortabilité Technologie indépendante de la plate-forme et duserveur.PuissanceDisponibilité de l’API ...
JSPUne JSP est un fichier contenant du code HTML et desfragments de code Java exécutés sur le moteur deServletsComparable...
JSP
EXEMPLE D’UN JSP<%--  Document : index  Created on : 12 nov. 2011, 16:29:30  Author      : ferhat--%><%@page contentType="...
JSFFramework qui a pour but de simplifier ledéveloppement dinterfaces utilisateurs.ilpermette de faire tout type dinterf...
EXEMPLE D’UN JSF<?xml version=1.0 encoding=UTF-8 ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://w...
EJB composant serveur qui peut être déployé Dans unserveur d’application Java EE Permettent aux développeurs de se conce...
LE FONCTIONNEMENTLe client dun Bean peut être▫ Une servlet.▫ Une applet.▫ Une application classique.▫ Un autre Bean.Exempl...
TYPES DES EJB• Session  – Stateless  – Stateful• Entity• Message-Driven
TYPES DES EJBSession Bean:• Sont conçus pour encapsuler la logique métier• Les plus utilisés• 2 types d’EJB session   – St...
TYPES DES EJB1- Session Bean Stateless (sans état)•Sont spécialement pensés pour être robustes etfiables lorsqu’il y a bea...
TYPES DES EJB1- Session Bean Stateful (avec état)•les attributs de l’EJB sont sauvegardés durant toute lasession.•Lorsqu’u...
TYPES DES EJBEn résumé, un Stateful Session Bean est utile pourmaintenir un état pendant la durée de vie du client au cou...
TYPES DES EJB2- Entity Beanpermet de gérer la persistance comme le feraitHibernate sur le concept de object-relational ma...
TYPES DES EJB3- Message-Driven Bean Permet à des applications de communiquer entreelles, en étant faiblement couplées, et...
JEE APILes technologies Java DataBase Connectivity(JDBC)Cette API permet aux applications Java daccéder auxbases de donnée...
JEE APILes technologies Java Message Service (JMS)Cette technologie permet denvoyer et de recevoir desmessages de manière ...
JEE APIJAAS(Java Authentication and Authorization Service) : est une API standard de Java permettant de gérer lesidentific...
JEE APILes technologies Java Transaction API (JTA)Cette technologie permet de piloter les transactionssans avoir à connaît...
LES FRAMEWORKSLes frameworks Définition :On va dire quil sagit dune infrastructure logicielle quifacilite la conception de...
LES FRAMEWORKSLes frameworks Y a til beaucoup de frameworks Java? Enormément. Pourquoi ?Très grande communauté.De nombreux...
LES FRAMEWORKSLes frameworks Struts, le plus vieux et lun des plusrépandus ! Il permet de développer des applicationsweb e...
LES FRAMEWORKSLes frameworks Spring, le conteneur léger. Spring aété crée avec lidée que JEE était bien trop compliquéet q...
GATE IN PORTAL FRAMEWORK    Enterprise Portal FrameWork :open source.    JBoss et eXo copropriétaire    Objectif: facilite...
GATE IN CONFIG
GATE IN DÉPLOIEMENT
SOMMAIREJSP,Servlet     JAVA       JEE  MVC         FrameWork   JEE API               GateIn
RÉFÉRENCES• EJB 3 in action, 2007• The J2EE 1.4 Tutorial, 2005, SUN• EJB3 2006 SUPINFO• EJB2 2005 SUPINFO• Mickaël BARON -...
???Ferhat GUEZLANE@f_guezlanefguezlane@gmail.com
Prochain SlideShare
Chargement dans…5
×

Presentation JEE et son écossystéme

1 466 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 466
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
76
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Presentation JEE et son écossystéme

  1. 1. JAVA ENTERPRISE EDITION ET SON ÉCOSYSTÈME@f_guezlanefguezlane@gmail.com
  2. 2. Ferhat GUEZLANEManager/Fondateur de Algeria JU@f_guezlanefguezlane@gmail.com
  3. 3. PLAN Qu’est ce que JAVA Qu’est ce que JEE L’architecture MVC Servlet, JSP,JSF EJBJEE API (JMS,JAAS,JDBC,JTA) Framework GateIn Portal Framework
  4. 4. QUEST CE QUE JAVA ETJEE ?
  5. 5. QUEST CE QUE JAVA?Java Technology Java Technology Workgroup High-EndEnabled Devices Enabled Desktop Server Server
  6. 6. COMMENT SE FAITLÉVOLUTION DE JAVA ? • (Des sociétés, des associations ou des individus )Besoins • rejoindre le groupe pour participer et influencer JCP lévolution du langage. Site : http://www.jcp.org • décrivent les spécifications et technologies proposées pour un ajout à la plateforme Java. JSR
  7. 7. COMMENT SE FAIT LÉVOLUTION DE JAVA ?Exemple :la JSR 168 est la spécification des portletsdéfinissant le contrat entre les conteneurs deportlets et les portlets.
  8. 8. COMMENT SE FAIT LÉVOLUTION DE JAVA ?Le JCP fait la norme JEE.Lindustrie et le monde du libre ne passentpas forcément par le JCP.Le JCP intègre souvent les bonnes idéesmais celapeut prendre du temps.
  9. 9. QUEST CE QUE JEE ?
  10. 10. QUEST CE QUE JEE ?JEE est la version « entreprise» de Java, elle a pourbut de faciliter le développement dapplicationsdistribuées.Depuis sa version 5, J2EE est renommé Java EE(Enterprise Edition).Généralement, les applications JEE fonctionnent àlintérieur dun serveur dapplications (conteneur)
  11. 11. QUEST CE QUE JEE ?JEE est composée de deux parties essentielles :Un ensemble de spécifications pour uneinfrastructure dans laquelle sexécutent lescomposants écrits en JavaUn ensemble dAPI qui peut être obtenu et utiliséséparément.
  12. 12. QUEST CE QUE JEE ? Ces API peuvent être regroupées en trois grandescatégories :les composants : Servlet, JSP, EJBles services : JDBC, JTA/JTS, JNDI, JCA, JAASla communication : RMI-IIOP, JMS, Java Mail
  13. 13. QUEST CE QUE JEE ?Ce quil faut retenir :JEE décrit des services techniques pour bâtir desapplications dentreprise.Une application JEE sexécute dans un serveurdapplications qu’est un environnement dexécution.
  14. 14. ARCHITECTURE JEE
  15. 15. L’ARCHITECTURE MVCun schéma qui représente bien l’architecture surlaquelle est basée la technologie J2EE
  16. 16. L’ARCHITECTURE MVCLa vueune application graphique swing, awt …une page web (JSP,..etc).
  17. 17. L’ARCHITECTURE MVCLe contrôleurpermet de faire le lien entre la vue et le modèlelorsquune interaction utilisateur est survenue sur lavue !
  18. 18. L’ARCHITECTURE MVCLe modèleEn trois mots, il sagit du cœur du programme !
  19. 19. LES SERVLETSLes servlets sont des applications Java quifonctionnent dans un serveur web et qui répondent auxrequêtes HTTP des clients.Le conteneur reçoit la requête du client, et sélectionnela servlet qui aura à la traiter.Le conteneur fournit également tout un ensemble deservices standards pour simplifier la gestion desrequêtes et des sessions.
  20. 20. EXEMPLE D’UNE SERVLETimport javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;@WebServlet(name="helloWorldServlet" ,urlPatterns={"/helloWorldServlet"})public class helloWorldServlet extends HttpServlet {protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); }protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); }}
  21. 21. PUISSANCE DES SERVLETSPortabilité Technologie indépendante de la plate-forme et duserveur.PuissanceDisponibilité de l’API de Java.SûretéGestion des erreurs par exception.
  22. 22. JSPUne JSP est un fichier contenant du code HTML et desfragments de code Java exécutés sur le moteur deServletsComparable aux langages côtés serveur de typePHP, ASP, … Les pages JSP sont converties en Servlet par le moteurde Servlets lors du premier appel à la JSP
  23. 23. JSP
  24. 24. EXEMPLE D’UN JSP<%-- Document : index Created on : 12 nov. 2011, 16:29:30 Author : ferhat--%><%@page contentType="text/html" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> </head> <body> <h1>Hello World!</h1> </body></html>
  25. 25. JSFFramework qui a pour but de simplifier ledéveloppement dinterfaces utilisateurs.ilpermette de faire tout type dinterface, il est surtoutvu comme une amélioration des JSP.Fonctionne dans un conteneur web commeGlassfish.
  26. 26. EXEMPLE D’UN JSF<?xml version=1.0 encoding=UTF-8 ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html"> <h:head> <title>Facelet Title</title> </h:head> <h:body> Hello from Facelets </h:body></html>
  27. 27. EJB composant serveur qui peut être déployé Dans unserveur d’application Java EE Permettent aux développeurs de se concentrer surles traitements orientés métiers. Sont réutilisables Le conteneur d’EJB s’occupe de certains traitements  Cycle de vie du bean  Accès au bean  Sécurité d’accès  Accès concurrents  Persistance des données,  Transactions, …
  28. 28. LE FONCTIONNEMENTLe client dun Bean peut être▫ Une servlet.▫ Une applet.▫ Une application classique.▫ Un autre Bean.Exemple :achat dun livre à partir du carte de crédit▫ Lecteur de carte (qui a une JVM embarquée) clientdun Bean sur le Serveur▫ Ce Bean est client dautres Beans : .gestion de catalogue, de commandes, de gestionde transaction, etc…
  29. 29. TYPES DES EJB• Session – Stateless – Stateful• Entity• Message-Driven
  30. 30. TYPES DES EJBSession Bean:• Sont conçus pour encapsuler la logique métier• Les plus utilisés• 2 types d’EJB session – Stateless – Stateful
  31. 31. TYPES DES EJB1- Session Bean Stateless (sans état)•Sont spécialement pensés pour être robustes etfiables lorsqu’il y a beaucoup d’appels en concurrence•Lecontainer est responsable de la création et de ladestruction du Bean .•Une instance de Stateless Session Bean nest paspropre à un client donné, elle peut être partagée entrechaque appel de méthode
  32. 32. TYPES DES EJB1- Session Bean Stateful (avec état)•les attributs de l’EJB sont sauvegardés durant toute lasession.•Lorsqu’un client appelle l’EJB, une instance de cedernier est créée, puis sert le client.•Cetteinstance reste disponible pour les futurs appelsde ce client uniquement.exemple : une application bancaire. Le client effectueplusieurs opérations. On ne va pas à chaque fois luiredemander son No de compte…
  33. 33. TYPES DES EJBEn résumé, un Stateful Session Bean est utile pourmaintenir un état pendant la durée de vie du client au cours dappels de méthodes successifs. Au cours de transactions successives. Si un appel de méthode change létat du Bean, lorsdun autre appel de méthode létat sera disponible.• Conséquence : une instance de Stateful SessionBean par client.
  34. 34. TYPES DES EJB2- Entity Beanpermet de gérer la persistance comme le feraitHibernate sur le concept de object-relational mapping(ORM) => illusion de travailler avec une base dedonnées objetLe mapping ne se fait plus forcément dans un fichierXML (comme hibernate.cfg.xml), mais directement dansle code avec des annotations (@Id, @Column, etc.)
  35. 35. TYPES DES EJB3- Message-Driven Bean Permet à des applications de communiquer entreelles, en étant faiblement couplées, et de manièreasynchrones. Ce concept est connu sous le nom de Message-oriented middleware (MOM).
  36. 36. JEE APILes technologies Java DataBase Connectivity(JDBC)Cette API permet aux applications Java daccéder auxbases de données. Il sagit de la même interface pourtoutes les bases de données, seul le driver change
  37. 37. JEE APILes technologies Java Message Service (JMS)Cette technologie permet denvoyer et de recevoir desmessages de manière asynchrone entre applicationsou composants Java.Cette technologie est utilisée par les EJB MDB.
  38. 38. JEE APIJAAS(Java Authentication and Authorization Service) : est une API standard de Java permettant de gérer lesidentifications et les droits associés (par rôles) au niveaudu client et du serveur dapplication.
  39. 39. JEE APILes technologies Java Transaction API (JTA)Cette technologie permet de piloter les transactionssans avoir à connaître les détails du gestionnaire detransactions. Cette API gère aussi transactionsdistribuées, cest à dire les transactions qui peuventdémarrer sur un système et dépendre du résultatdautres systèmes.
  40. 40. LES FRAMEWORKSLes frameworks Définition :On va dire quil sagit dune infrastructure logicielle quifacilite la conception des applications par lutilisationde bibliothèques, de modèles de convention...De manière plus générale, il sagit dune ‘’ structure‘‘qui soutient quelque chose dautre. Une sorte desquelette qui sert de base à quelque chose qui estconstruit.
  41. 41. LES FRAMEWORKSLes frameworks Y a til beaucoup de frameworks Java? Enormément. Pourquoi ?Très grande communauté.De nombreux besoins.Différents points de vues. ...
  42. 42. LES FRAMEWORKSLes frameworks Struts, le plus vieux et lun des plusrépandus ! Il permet de développer des applicationsweb en Java en suivant larchiecture Modèle-Vue-Contrôleur.Les frameworks Hibernate permet de gérer lapersistence des données, cest à dire : plus besoin deSQL . On laisse Java stocker automatiquement lesobjets dans la base.
  43. 43. LES FRAMEWORKSLes frameworks Spring, le conteneur léger. Spring aété crée avec lidée que JEE était bien trop compliquéet quil valait mieux coder par Interface que parhéritage.Les frameworks GWT, framework de Google pour lesapplications Ajax. Vous permet de développer desapplications web Ajax, directement en Java, aussifacilement que vous feriez une application de bureauclassique. Plus besoin de connaître HTML, Javascript
  44. 44. GATE IN PORTAL FRAMEWORK Enterprise Portal FrameWork :open source. JBoss et eXo copropriétaire Objectif: facilite le développement des « Java web applications ». PHP: Drupal Java: Gatein
  45. 45. GATE IN CONFIG
  46. 46. GATE IN DÉPLOIEMENT
  47. 47. SOMMAIREJSP,Servlet JAVA JEE MVC FrameWork JEE API GateIn
  48. 48. RÉFÉRENCES• EJB 3 in action, 2007• The J2EE 1.4 Tutorial, 2005, SUN• EJB3 2006 SUPINFO• EJB2 2005 SUPINFO• Mickaël BARON - 2007 (Rév. Août 2009) mailto:baron@ensma.fr• Java Enterprise Edition et son écosystème StéphaneTraumat (Scub)• EJB 3 formation interne pour CLIO S.A. CédricBOTTERO Michaël MATHIEU Genève, le 30 juin 2009
  49. 49. ???Ferhat GUEZLANE@f_guezlanefguezlane@gmail.com

×