Java EE – Développer des services Back-End

Référence : T462-021

Infos pratiques

  • Durée : 5 jours soit 35 heures
  • Population visée : Ouvrier – Employé – Employé qualifié – Cadre – Cadre supérieur
  • Public concerné : Toute personne souhaitant apprendre à développer des applications Back-End (côté serveur) avec la plateforme Java EE et le langage Java sous l’IDE Eclipse

Programme

Objectifs pédagogiques

A l’issue de cette formation, l’apprenant sera capable de :

  • Décrire l’architecture de la plateforme Java EE ;
  • Exposer les principes du développement en couches et les responsabilités des composants dans une application back-end ;
  • Mettre en place et utiliser un environnement de développement pour concevoir et déboguer une application Web Java EE ;
  • Mettre en place une couche de persistance métier ;
  • Développer des Services REST avec JAX-RS pour exposer les fonctionnalités applicatives ;
  • Utiliser les APIs de gestion des formats d’échanges (JSON par exemple) ;
  • Coder des composants applicatifs complémentaires tels que des filtres et des écouteurs d’évènements applicatifs ;
  • Sécuriser une application back-end Java EE en utilisant le modèle de sécurité offert par la plateforme ;
  • Packager, déployer et configurer une application Web Java EE sur un serveur d’applications.

Pré-requis

  • Programmer en Java

Objectifs opérationnels et contenu de la formation

Architecture de la plate-forme Java EE

  • Architecture des applications Client / Serveur
  • Environnement Java EE
  • Structure des modules et applications Java EE
  • Les serveurs d’applications Java EE

Conception d’applications Web Java EE

  • Présentation du modèle de conception MVC
    • Attribution des rôles aux composants Java EE
  • Répartition des composants applicatifs dans les différentes couches logicielles
    • Notion de couplage et d’interdépendance

Utiliser un IDE pour le développement Web Java EE

  • Installer et configurer un IDE pour le développement Java EE
    • Configurer une instance de serveur d’applications pour tester l’exécution des composants Web
    • Déboguer les composants Web
  • Création d’un projet Maven
    • Cibles d’exécution
    • Extensions et dépendances

Gestion de la couche d’accès aux données avec le framework JPA

  • Initialiser le framework
    • Les fichiers de configuration et de mapping
    • EntityManager et EntityManagerFactory
  • Création d’instances persistantes
    • Règles de conception des classes
    • Mapping des associations
    • Mapping de l’héritage
  • Lecture/écriture d’instances persistantes
  • Utilisation des langages de requêtage JPQL
  • Travaux pratiques:
    • Création de la couche d’accès aux données pour l’application

Développement de Servlets

  • Présentation de l’API Servlet
  • Cycle de vie d’une Servlet
  • Méthodes de services d’une Servlet
  • Configuration par annotation
  • Objets requêtes et réponses HTTP
  • Paramètres des requêtes HTTP
  • Maintenir le contexte utilisateur avec les cookies et les sessions
  • Contextes de données (application, session, requête)
  • Construction de la réponse, redirection et inclusion.
  • Travaux pratiques:
    • Conception d’une servlet afin de comprendre le modèle de programmation et le cycle de vie.

Développement de filtres et listeners

  • Principe de fonctionnement et cas d’utilisations des filtres
  • Création de classes de Filtres
  • Principes de fonctionnement et cas d’utilisations des listeners
  • Création de classes listeners sur les contextes de session et d’application
  • Travaux pratiques:
    • Création de filtres de validation de requêtes.
    • Création d’un écouteur d’évènements sur la session HTTP.
    • Création d’un écouteur d’évènements sur la requête HTTP.

Développement de Services REST en Java

  • Les concepts fondamentaux de REST (REpresentational State Transfer)
  • L'identification des ressources par URI
    • Les formats de données utilisables (XML, HTML, JSON)
  • API JAX-RS et annotations
  • Développement d'une classe ressource
    • Configuration d’une implémentation JAX-RS
    • Mise en œuvre des annotations JAX-RS
    • Utilisation des formats de données (XML, Texte, JSON, …)
  • Travaux pratiques:
    • Concevoir des Services REST Java s’appuyant sur un modèle de données fourni
    • Tester les Services avec un outil de test logiciel dédié (Postman)

Injection de dépendances avec l’API CDI

  • L’injection de dépendances
  • Les principes et l’intérêt de l’injection de dépendances
  • Le design pattern Inversion Of Control (IoC)
    • La configuration par fichiers annotations
    • La définition des beans
    • Instanciation et références
    • Travaux pratiques:
      • Injecter le service d’accès aux données dans le service REST de l’application.

Configuration et paramétrage d’une application Web Java EE

  • Le descripteur de déploiement : le fichier web.xml
  • Les annotations et l’aspect facultatif du descripteur de déploiement
  • Les « Web Fragments » et la modularisation de la configuration
  • Déclaration de la page d’accueil par défaut
  • Déclaration et paramétrage des :
    • Servlets
    • JSP
    • filtres
    • listeners
  • Déclaration de la page de gestion des erreurs par défaut
  • Déclaration de la durée de vie des sessions HTTP
  • Travaux pratiques:
    • Compléter le fichier de configuration web.xml pour l’application.
    • Ajouter la définition des mécanismes de session.
    • Définir des pages d’erreurs pour les codes HTTP courants.

Sécurisation d’une application Web Java EE

  • Authentification, autorisation : le modèle de sécurité de Java EE
  • Déclaration des ressources sécurisées et des rôles applicatifs
  • Les différentes méthodes d’authentification
  • Travaux pratiques:
    • Sécuriser une partie des services qui ne doivent être accessibles que par certains profils utilisateurs.
    • Configurer le serveur d’application pour la prise en compte de la sécurité.

Packaging et déploiement des applications Web Java EE

  • Création de l’archive Web Java EE pour le déploiement
    • Utiliser l’IDE ou Apache Maven pour le packaging en fichier WAR
  • Utilisation de la console d’administration du serveur d’applications pour configurer le déploiement de l’application Web Java EE
  • Déployer l’application Web Java EE à chaud et/ou à froid
  • Travaux pratiques:
    • Déployer l’application sur un serveur d’applications Java EE.

Méthodes et moyens

 Explications théoriques suivies de pratiques guidées puis de mises en autonomie


Votre formation a lieu en présentiel :

  • 1 vidéoprojecteur par salle
  • 1 ordinateur

Votre formation se déroule à distance avec :

  • 1 ordinateur
  • 1 connexion Internet
  • 1 adresse e-mail valide
  • 1 équipement audio (micro et enceintes ou casque)
  • 1 Webcam (facultatif – dans l’idéal)
  • 1 deuxième écran (facultatif – dans l’idéal)

Votre formation se déroule sur notre plate-forme de formation avec :

  • 1 ordinateur
  • 1 connexion Internet
  • 1 adresse e-mail valide
  • 1 équipement audio (micro et enceintes ou casque - facultatif)

Méthodes d’évaluation des acquis

L’acquisition des compétences de la formation se fait à travers le suivi du formateur tout au long de la formation (séquences synchrones et asynchrones). Elle s’appuie également sur la réalisation d’exercices et de TP. Enfin, des quiz s’ajoutent aux différents outils de validation de l’acquisition des compétences visées.
Une évaluation est systématiquement réalisée par chaque stagiaire, à l’issue de la formation.

Profil formateur

Nos formateurs sont certifiés à l’issue d’un parcours organisé par nos soins. Ils bénéficient d’un suivi de maintien et d’évolution de leurs compétences aussi bien au niveau technique que pédagogique.
Chacun de nos formateurs a bénéficié d’une formation spécifique à l’animation de classe virtuelle et à l’utilisation des solutions de formation à distance du Groupe ARKESYS.

Support stagiaire

À l’issue de la formation, les exercices et travaux pratiques réalisés, leurs corrigés ainsi qu’un support de cours dématérialisé sera fourni à chaque stagiaire par e-mail ou via la plate-forme FOAD.

Accessible à tous

Cette formation est accessible à toute personne en situation de handicap. Notre référent handicap prendra contact avec les stagiaires concernés pour adapter l’animation à leurs besoins et rendre l’apprentissage accessible à tous. Enfin, nos centres de formation sont accessibles aux personnes à mobilité réduite.