PRÉSENTATION DE JAVA JEE.
INTRODUCTION À JAVA ET AUX APPLICATIONS DISTRIBUÉES
- La plateforme Java et les machines virtuelles.
- Comparaison avec les autres environnements.
- Structure d'une application : le modèle MVC-2, notion de composant.
- Les différentes couches d'une application, typologie des applications Java.
- Panorama des technologies JEE.
LES CLIENTS DE JEE ET GESTION DE LA PRÉSENTATION
- Clients Web. Applets. Applications clientes " lourdes ", riches (RIA) et mobiles.
- HTML et autres services de présentation, DOM, XHTML, Ajax.
- Les servlets et le container Web. Les JSP, JavaBean, librairies de balises, CustomTag. Le framework Struts et JSF.
LES CONTENEURS DE COMPOSANTS JEE
- Rôles et apports : états, multithreading, pooling et réutilisation, etc.
- Modèle de sécurité de JEE. Les transactions dans le JEE.
- Le JNDI et l'accès aux ressources.
- Paquetage de déploiement : modules Web, EJB, connecteur et clients.
LES SERVICES JEE
- Les différents types d'EJB et leur rôle : Entity Bean, Session Bean et Message Driven Bean.
- Gestion de la persistance. Principe du Mapping Objet/relationnel. JPA et ses implémentations : EJB entités, Hibernate...
- Architecture orientée message. Le service de messagerie de Java : le JMS (Java Message Service).
- XML, SOAP et les services Web. Les différentes API du JEE : JAX-WS et JAX-RS.
DÉVELOPPEMENT D'UNE ARCHITECTURE DISTRIBUÉE EN JAVA
- Démarche d'analyse et de conception d'un projet JEE : l'approche orientée composant.
- Règles de conception et Design Patterns.
- Cycle de vie des projets JEE.
- Mesure des performances d'une architecture multiniveaux distribuée.
- La haute disponibilité, la tolérance aux pannes et les différents niveaux de Clustering.
PANORAMA DES OFFRES JEE DU MARCHÉ
- Plateformes commerciales : IBM WebSphere, BEA WebLogic, Borland AppServer, Oracle AS, Sun One App Server.
- Briques JEE libres : JBoss, Jonas, Apache Tomcat, Open JMS, Axis, etc.
- Environnements et outils de développement : Eclipse, rôle de JUnit et d'Apache ANT dans le développement.
- Rôles des AGL et des outils MDA.
- Etudes et comparaison.
PRÉSENTATION DE HIBERNATE.
OBJECTIFS
- Définition de la persistance objet
- Classes, fichier de mapping, configuration, cycle de vie des objets
- Mappage des associations unidirectionnelle/bidirectionelle et des
- collections
L’ARCHITECTURE D’HIBERNATE
- Vue en couche
- Cycle de vie des instances
- Intégration JNDI, JDBC, JTA
- Gestion des sessions
CONFIGURATION
- APIs permettant la configuration par programmation
- Ouverture des sessions
- Gestion des connexions JDBC
- Dialectes SQL, cache de second niveau et cache de requêtes,
- Fichier de configuration XML
- Intégration à un serveur d’application Java EE
RÉALISATION DE CLASSES PERSISTANTES
- Les Plain Ordinary Java Object (POJO)
- Mise en oeuvre de l’héritage
- Redéfinition des méthodes equals et hashCode
LES BASES DU OBJECT RELATIONAL MAPPING
- Les déclarations de mapping
- Les types utilisés par Hibernate
- Plusieurs mappings pour une même classe
- Les annotations JAVA 5
ETABLIR LA PERSISTANCE DES COLLECTIONS
- Les types de collections persistantes
- Les clés étrangères, les éléments et les index d’une collection
- Associations *..* et 1..*
ETABLIR LA PERSISTANCE DES ASSOCIATIONS
- Associations unidirectionnelles
- Associations bidirectionnelles
- Mappings complexes
ETABLIR LA PERSISTANCE DES RELATIONS D’HÉRITAGE
- Différentes stratégies
- Utilisation d’un discriminant
- Gestion du polymorphisme
- Comparaison des méthodes, avantages et inconvénients, dans quels cas les utiliser?
HIBERNATE QUERY LANGUAGE (HQL) ET GESTION DES OBJETS PERSISTANTS
- Stocker et charger un objet
- Syntaxe du language HQL, les clauses from, select, where, order by,group by Jointures, agrégation, requêtes polymorphiques
- Les requêtes imbriquées
- Les bonnes pratiques
- Externalisation de requêtes nommées
- Chargement tardif des propriétés
- Gestion du cache de second niveau
Le cache de requêtes.
- 13 JUIN 2016
- 10 OCTOBRE 2016
- 21 NOVEMBRE 2016