Accueil    Formations    Informatique    Langages et développement    Développeur Java    Java EE - Développer des applications d'entreprise

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Objectifs pédagogiques / Compétences visées

  • Décrire la plateforme Java EE en termes de composants applicatifs (Enterprise Java Beans, Jakarta Persistence API...)
  • Développer des servlets et JSP (JavaServer Pages)
  • Gérer le contexte applicatif avec la session
  • Déployer une application et gérer son aspect optimisation.

Niveau requis

Avoir une connaissance pratique en Java ou avoir suivi le cours JAV-SE "Java - Les fondamentaux de la programmation". Avoir des notions de base HTML.

Public concerné

Développeurs, architectes, chefs de projets techniques.

Programme

Jour 1 - Matin

La plateforme JEE pour le Web

  • Objectifs de JEE (Java Entreprise Edition)
  • Présentation des normes principales de JEE
  • Développer une application pour le Web et pour un serveur d'application
  • Typologie des architectures JEE selon l'objectif

Place des constituants dans le n-tiers

  • Présentation d'une architecture n-tiers JEE
  • N-tiers et MVC (Modèle-Vue-Contrôleur)
  • Présentation de la notion de POJO (Plain Old Java Object)
  • Importance du concept POJO dans Java
  • Place des servlets
  • Place des JSP (JavaServer Pages) et de JSF2 (JavaServer Faces 2.0)
  • Place et rôle des JavaBeans de type POJO

Jour 1 - Après-midi

Les servlets 3.0

  • Place et rôle des servlets dans l'architecture Web JEE
  • Cycle de vie d'une servlet
  • Concevoir un échange Web avec une servlet, les formulaires HTML
  • Annotations et configuration web.xml
  • Contexte de l'application et ServletConfig
  • Requêtes et réponses
  • Gestion des sessions en servlet
  • Utilisation du RequestDispatcher
  • Filtres et Listeners
  • Sécurisation de l'application Web avec SecurityRealms
  • Architecture d'une application Web
    • Descripteur de déploiement
    • Fichier .WAR
    • Packaging
  • Types de packaging d'applications Web
    • WAR (Web Application Archive)
    • RAR (Resource Adapter Archive)
    • JAR (Java Archive)
    • EAR (Enterprise Application Archive)
Exemple de travaux pratiques (à titre indicatif)
  • Réalisation d'une application Web intégrant des contrôleurs via des servlets

Jour 2 - Matin

La présentation avec JSP

  • Syntaxe
    • Scriptlet et expressions
  • Variables implicites
  • Directives
  • Syntaxe XML
  • Utilisation de Bean
  • Expression Language (EL)
  • TagLibs et custom tags
  • JSTL (Java Standard Tag Library)
Exemple de travaux pratiques (à titre indicatif)
  • Ajout à l'application des JSP, partie Vue

Utilisation de la norme JSF2

  • Présentation du framework JSF2
  • Cycle de vie d'une requête JSF2
  • Les composants graphiques UI
  • La servlet FacesServlet
  • Les Managed Beans
  • Concevoir la navigation entre les pages
  • Conversion de données implicite et explicite
  • Validation des données
Exemple de travaux pratiques (à titre indicatif)
  • Traduction de l'application développée en JSF2, intégrant un exemple typique de modèle MVC

Jour 2 - Après-midi

Présentation des EJB (Enterprise Java Beans)

  • Les trois sortes d'EJB : Entité, Session, Message
  • Les EJB Session Stateless et Stateful
  • Les annotations disponibles standards
  • Adaptation des annotations aux différents serveurs d'application
Exemple de travaux pratiques (à titre indicatif)
  • Réalisation d'un EJB3 Session déployé sur un serveur d'application type WildFly ou GlassFish ou JBoss

Jour 3 - Matin

Accès aux données

  • Rappel JDBC (Java DataBase Connectivity)
  • Utilisation de JNDI (Java Naming and Directory Interface) et des Data Sources
  • Présentation des diverses méthodes JSDB d'accès aux données
  • Présentation de JPA (Jakarta Persistence API)
  • Rôle de l'EntityManager
  • Les POJO et les annotations JPA
  • Accéder aux données avec JPA et HQL (Hibernate Query Language)
  • L'API Criteria
Exemple de travaux pratiques (à titre indicatif)
  • Ajout à l'application de composants JPA, représentant une entité ou plusieurs DB

Jour 3 - Après-midi

Les Web Services et WebSockets

  • Présentation des Web Services REST
  • Développement de Web Services REST client et serveur
  • Présentation des Web Services SOAP
  • Développement de Web Services SOAP client et serveur
  • Présentation des WebSockets
  • Développement d'une application serveur WebSocket et cliente JavaScript
Exemple de travaux pratiques (à titre indicatif)
  • Démonstration de l'ajout, à l'application précédente, d'un service Web REST

Jour 4 - Matin

Les normes importantes

  • JMS (Java Message Service)
  • JMX (Java Management Extensions)

Le déploiement d'applications

  • Les différentes topologies
    • Conteneur Web et conteneur EJB
    • Le découplage : HTTP, WEB, EJB
    • Les ressources statiques à part
  • Stratégies de déploiement
    • 1, 2, n-serveurs ?
    • Session : que maintient-on ?
  • La sécurité : vue générale
  • Le clustering
    • Matériel ou logiciel ?
    • L'affinité de session
  • Automatisation des déploiements
    • Les solutions éditeurs
    • Les scripts
  • Archivage des versions, rythmes de déploiement
Exemples de travaux pratiques (à titre indicatif)
  • Sécurisation et déploiement de l'application

Jour 4 - Après-midi

Monitoring d'applications

  • Sources d'information
    • Les logs HTTP
    • Applicatifs
    • De l'OS (Operating System)
    • Des SGBD (Système de Gestion de Base de Données)
  • La génération des logs Java
    • Java
    • Log4J
    • SLF4J (Simple Logging Facade for Java)
    • Common Loggings
  • Analyse des logs
    • Outils Open Source (Chainsaw...)
    • Le lien avec les logs HTTP
  • Monitoring temps réel
    • Le support de SNMP (Simple Network Management Protocol) dans Java
    • La MIB (Management Information Bases)
    • JMX
    • La JConsole
  • Points à surveiller
    • Mémoire, utilisation par la JVM (Java Virtual Machine), fuites
    • I/O disques
    • Les pools
Exemple de travaux pratiques (à titre indicatif)
  • Utilisation des outils de monitoring mémoire et autres

Jour 5 - Matin

Performances des applications JEE

  • Quelle performance ?
    • Temps de réponse
    • Comportement de la JVM
  • Focus sur les temps de réponse
    • Analyse de bout en bout
    • Tests de charge
  • Stabilité et montée en charge du serveur d'applications
    • Tuning de la JVM
  • Le GC (Garbage Collector) selon les versions de Java
  • Anticiper l'évolution de la plateforme : améliorations matérielles et applicatives
Exemple de travaux pratiques (à titre indicatif)
  • Etude de la performance des applications Web, tuning et autres

Jour 5 - Après-midi

Synthèse finale / projet

  • Etude et développement d'une application reprenant l'ensemble des normes et composants vus en cours

Certification (en option)

  • Prévoir l'achat de la certification en supplément
  • L'examen (en français) sera passé le dernier jour, à l'issue de la formation et s'effectuera en ligne
  • Il s'agit d'un QCM dont la durée moyenne est d'1h30 et dont le score obtenu attestera d'un niveau de compétence
  • La certification n'est plus éligible au CPF depuis le 31/12/2021, mais permettra néanmoins de valider vos acquis

Modalités d’évaluation des acquis

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vous souhaitez suivre cette formation ?

Cette formation est disponible en présentiel ou en classe à distance, avec un programme et une qualité pédagogique identiques.

Choisissez la modalité souhaitée pour vous inscrire :

Votre société a besoin d'une offre personnalisée ? Contactez-nous

Testez vos connaissances

Nos quizz vous guident dans le choix de formation.
Évaluez votre niveau de pré-requis pour découvrir la formation faite pour vous.

Accédez au test de connaissance

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.

Contactez-nous