1- Introduction à Java EE et classification des frameworks de développement
- Aperçu de l'écosystème JEE, des frameworks leaders, de leur rôle dans le développement
d'applications Java.
- Tour d'horizon des patterns et des frameworks actuels de Java EE.
- Classification des frameworks Java EE.
- Présentation et comparaison des architectures 2-tiers, 3-tiers, n-tiers. Présentation de
l'architecture SOA.
2- Les frameworks d'industrialisation et de gestion de la qualité
- Organisation d'un développement Java : Le cycle de vie, les métiers, les processus de
développement, gestion de la qualité.
- Ant, un framework d'automatisation de tâches.
- Maven, pour simplifier la production et la gestion des "build".
- JUnit, un framework pour la rédaction et l'exécution de tests unitaires.
- Gestion de la qualité avec Checkstyle, PMD, FindBugs et Sonar.
- Outils de gestion de versions : Git et d'intégration continue avec Jenkins. Intégration de Git
avec Jenkins.
3- Les frameworks de persistance Hibernate et JPA
- Revue rapide de l'infrastructure JDBC et des patterns d'accès aux données.
- Présentation de la persistance et des principes de l'ORM (Object Relational Mapping).
- Présentation de l'architecture de Hibernate et de son modèle de configuration et de
programmation.
- Création d'un mapping objet/relationnel. SessionFactory, Configuration, API Criteria, et
HQL.
- Manipulation de données persistantes. Cycle de vie des objets. Synchronisation avec la base
de données.
- Présentation de l'architecture de JPA et de son modèle de configuration et de
programmation. Comparaison Hibernate/JPA.
- Création d'un mapping objet/relationnel. Contexte, classes persistantes.
- Manipulation de données persistantes. Cycle de vie des objets. Synchronisation avec la base
de données. Pratique de JPQL.
- Aspects avancés : Optimisations des allers/retours vers la base de données. Mise en oeuvre
de la technique de Cache.
- Rappel des erreurs à éviter.
4- Le framework d'intégration Spring
- Concepts de conteneur léger.
- Vue d'ensemble et exemples d'utilisation de Spring.
- Pattern "Inversion de Contrôle (IoC) : Injection de dépendance".
- Mise en oeuvre de Spring Core: Injection de dépendances et AOP.
- Configuration de Beans spécifiques à Spring, cycle de vie Les Beans, BeanFactory et
ApplicationContext.
- Méthodes d'injection de dépendance.
- Programmation orientée aspect (AOP) avec Spring.
- Les différents types d'«advice» : around, before, throws, after.
- Intégration de Spring avec Hibernate et JPA.
- Intégration de Spring dans le tiers Web.
- Mise en oeuvre de Spring Security.