Formations Java / J2EE - Développer une application d'entreprise avec EJB3

Formation DATASTAGE

Toutes les formations Datastage sont disponibles chez Nativo.

Lire la suite ...

Intra-entreprise :
Formation personnalisée dans vos locaux.

Inter-entreprise :
Formation dans nos locaux.


Formation Java / J2EE - Développer une application d'entreprise avec EJB3

Durée : 5 jours
Prix HT : 2 250 €
Lieu : Paris (La Défense)
Ref : JAV074


Prochaines sessions :
18 juin 2012 | 8 octobre 2012 | 17 décembre 2012 | Egalement disponible en Intra : Tarif au 01 46 20 18 40.
 Télécharger le plan de cours  Envoyer à un ami  Imprimer

Résumé

Les Entreprise JavaBeans (EJB) n'ont que peu de rapport avec les JavaBeans standards.
Les EJB sont des composants serveur qui prennent en charge la sécurité, la réplication, les transactions et la persistance dans un environnement distribué et scalable.
La spécification EJB3 cherche à revoir largement EJB2, jugé trop complexe pour les développements quotidiens. Elle emprunte d'ailleurs assez largement aux solutions éprouvées qui se sont développés avec succès en alternative à EJB2, essentiellement Spring (injection de dépendances) et Hibernate (mapping O/R).
L'intérêt d'implémenter une couche de mapping objet-relationnel entre un modèle métier « objet » et une base de données relationnelle n'est probablement plus à démontrer : le code qui contient les requêtes SQL est isolé dans un endroit unique, permettant une adhérence réduite au schéma de la base ; le modèle métier peut respecter les principes de la programmation objet, utiliser l'héritage et la navigation.
Issue des travaux du groupe d'experts de la JSR 220 (EJB 3), JPA est une spécification clé de Java EE 5. Loin d'être un framework de plus, JPA etablit une norme standard simplifiée pour la persistance afin de garantir une meilleure portabilité des applications Java EE 5. JPA reprend naturellement les meilleures pratiques de frameworks établis tels Hibernate ou TopLink. EJB 3 s'appuie sur JPA pour la persistance des entités.
Issue des travaux du groupe d'experts de la JSR 220 (EJB 3), JPA est une spécification clé de Java EE 5. Loin d'être un framework de plus, JPA etablit une norme standard simplifiée pour la persistance afin de garantir une meilleure portabilité des applications Java EE 5. JPA reprend naturellement les meilleures pratiques de frameworks établis tels Hibernate ou TopLink. EJB 3 s'appuie sur JPA pour la persistance des entités.

Objectifs de la formation

Les objectifs de la formation sont les suivants:
Etre capable de développer des composants métier EJB3
Connaître et assimiler les concepts d'un conteneur EJB3
Mettre en oeuvre les différentes types d'EJB : session stateless, session stateful, entité et message
Connaître les bonnes pratiques
Connaître les concepts de la norme JPA
Savoir définir un modèle persistant
Connaître les problématiques liées à la persistance d'objets sur bases relationnelles
Comprendre et savoir utiliser le langage de requêtes objet JPQL
Connaître les techniques et compromis permettant de garantir de bonnes performances

Publics

Développeurs Java ayant expérience minimale de 6 mois, etc., connaissant JEE.

Pré-requis pour suivre cette formation Java / J2EE

Cette formation permet de comprendre et d'expérimenter JPA par la pratique. Elle est un pré-requis indispensable au cours EJB3.

Contenu de la formation Java / J2EE :

Java Entreprise Edition 5 :
- Les 6 niveaux d'une architecture moderne
- Architecture générale
- Java EE et le modèle MVC
- Rôles des EJB
- Les différents types d'EJB :
- EJB Session (Statefull, Stateless)
- EJB Entity
- EJB Message
- Conteneur d'EJB
- Architectures de déploiement
- RMI / IIOP
- Java EE : historique
- Les serveurs Java EE 5

La problématique de persistance :
- Le mapping objet-relationnel
- Intérêt de JPA, positionnement
- JPA et les serveurs d'applications
- Historique des solutions, Hibernate, TopLink, EJB
- Java EE : historique
- Les serveurs Java EE 5

Le modèle de persistance :
- Définition d'une entité persistante, concept de POJO, les attributs, les relations
- Entité et Identité
- Cycle de vie des entités
- Mise en place d'un mapping
- Mapping sans annotations
- Mapping par annotations
- Déclaration des attributs
- Représentation des différents types de relation entre entités
- Classe embarquée
- Relation 0..1
- Relation 1..N et N..1
- Relation N..M
- Manipulations CRUD des entités
- Gestion de la bidirectionnalité (ou relation inverse)
- Gestion de l'héritage et du polymorphisme
- Mapper une entité sur plusieurs tables
- TP Mise en place de la persistance d'un modèle illustrant les différentes configurations présentées

Manipulation des Entités :
- Le concept d'Entity Manager
- Gestion des Transactions, JTA (java Transaction API)
- Les requêtes : requêtes nommées et requêtes dynamiques, Java Persistence Query Language,
- Définition d'une requête
- Exécution d'une requête
- Requêtes paramétrées
- Syntaxe JPQL
- TP
- Utilisation des fonctionnalités de requêtage de JPA

Performances :
- Utilisation de Cascade
- Optimisation du chargement et Lazy Loading
- Le verrouillage Optimiste

Session Bean :
- Les EJB Session
- EJB Session stateless
- EJB Session statefull
- Interfaces d'un EJB
- Les annotations
- Interfaces locales et distantes
- Déploiement
- Eclipse et WTP pour le développement

Interagir avec des EJB Session :
- Principe d'appel à un EJB avec JNDI
- EJB et WebServices
- EJB Session Stateful
- Notions avancées
- SessionContext
- Callbacks
- Intercepteurs
- Timer

Gestion des transactions :
- Transactions gérées par le conteneur
- Transactions gérées par le bean
- Gestion des accès concurrents

Sécurité :
- Sécurité dans Java EE 5
- Sécurisation des EJB 3

Message-Driven Bean :
- Présentation des EJB Message
- Java Message Service (JMS)
- Développement d'un Message Bean
- Types de messages

Conclusion :
- Panorama des implementations
- Futur des serveurs d'application Java et de la persistance