Podcast
Questions and Answers
Quelle annotation est utilisée pour une interface qui permet des méthodes accessibles de manière distante ?
Quelle annotation est utilisée pour une interface qui permet des méthodes accessibles de manière distante ?
- @Local
- @Singleton
- @Stateless
- @Remote (correct)
Quel type d'EJB crée une instance unique peu importe le nombre de connexions ?
Quel type d'EJB crée une instance unique peu importe le nombre de connexions ?
- Stateful
- Stateless
- Local
- Singleton (correct)
Quel attribut de l'annotation JNDI spécifie le nom associé à l'EJB dans l'annuaire ?
Quel attribut de l'annotation JNDI spécifie le nom associé à l'EJB dans l'annuaire ?
- interface
- type
- name (correct)
- reference
Quel type d'EJB est instancié pour chaque connexion ?
Quel type d'EJB est instancié pour chaque connexion ?
Que se passe-t-il par défaut pour le nom associé à un EJB dans JNDI ?
Que se passe-t-il par défaut pour le nom associé à un EJB dans JNDI ?
Quel est le format du nom JNDI complet pour un EJB Stateless ?
Quel est le format du nom JNDI complet pour un EJB Stateless ?
Quel ajout est nécessaire pour le nom JNDI d'un EJB Stateful ?
Quel ajout est nécessaire pour le nom JNDI d'un EJB Stateful ?
Lors du déploiement d'un projet sur Jboss 7, où doit-on vérifier la présence du fichier .jar ?
Lors du déploiement d'un projet sur Jboss 7, où doit-on vérifier la présence du fichier .jar ?
Que doit-on faire après avoir exécuté le client Java pour vérifier l'intégrité des données ?
Que doit-on faire après avoir exécuté le client Java pour vérifier l'intégrité des données ?
Quelle opération est nécessaire pour créer un client Java efficace ?
Quelle opération est nécessaire pour créer un client Java efficace ?
Quel est le but principal des EJB ?
Quel est le but principal des EJB ?
Quelle fonctionnalité n'est pas assurée par le conteneur EJB ?
Quelle fonctionnalité n'est pas assurée par le conteneur EJB ?
Quels types d'EJB permettent de gérer les transactions ?
Quels types d'EJB permettent de gérer les transactions ?
Qu'est-ce qui libère le développeur de la gestion des services lorsqu'il communique avec un EJB ?
Qu'est-ce qui libère le développeur de la gestion des services lorsqu'il communique avec un EJB ?
Quel type d'EJB est utilisé pour assurer la persistance des données ?
Quel type d'EJB est utilisé pour assurer la persistance des données ?
Quel est le rôle d'un client dans l'architecture EJB ?
Quel est le rôle d'un client dans l'architecture EJB ?
Quel protocole utilisent généralement les clients développés avec des langages comme .Net, PHP et C++ pour communiquer avec les composants Web Services?
Quel protocole utilisent généralement les clients développés avec des langages comme .Net, PHP et C++ pour communiquer avec les composants Web Services?
Quel est un avantage d'utiliser des serveurs EJB commerciaux ?
Quel est un avantage d'utiliser des serveurs EJB commerciaux ?
Quelle affirmation est vraie concernant les types d'EJB ?
Quelle affirmation est vraie concernant les types d'EJB ?
Quelle est la première étape du processus suivi par la couche application lors de la gestion d'une requête?
Quelle est la première étape du processus suivi par la couche application lors de la gestion d'une requête?
Pourquoi est-il important de séparer la couche DAO et la couche Métier?
Pourquoi est-il important de séparer la couche DAO et la couche Métier?
Quel est le rôle de la couche Metier dans une application Java EE?
Quel est le rôle de la couche Metier dans une application Java EE?
Quel est un des avantages de l'utilisation des EJB?
Quel est un des avantages de l'utilisation des EJB?
Le processus de traitement métier en plusieurs étapes est géré par:
Le processus de traitement métier en plusieurs étapes est géré par:
Quelle affirmation est correcte concernant les clients mobiles?
Quelle affirmation est correcte concernant les clients mobiles?
Quel aspect est mis en avant par la séparation entre la couche Métier et la couche DAO?
Quel aspect est mis en avant par la séparation entre la couche Métier et la couche DAO?
Quelle annotation est utilisée pour spécifier la clé primaire d'une entité dans JPA?
Quelle annotation est utilisée pour spécifier la clé primaire d'une entité dans JPA?
Quel est le rôle de l'annotation @OneToMany dans la gestion des entités en JPA?
Quel est le rôle de l'annotation @OneToMany dans la gestion des entités en JPA?
Quel est le rôle d'un employé dans le cadre d'une opération ?
Quel est le rôle d'un employé dans le cadre d'une opération ?
Quel champ d'un compte courant est particulier par rapport à un compte épargne?
Quel champ d'un compte courant est particulier par rapport à un compte épargne?
Quelle annotation permet d'indiquer que le champ ne doit pas être pris en compte lors du mapping?
Quelle annotation permet d'indiquer que le champ ne doit pas être pris en compte lors du mapping?
Quelle entité représente les opérations dans la base de données ?
Quelle entité représente les opérations dans la base de données ?
Quel type d'objet est nécessaire pour représenter une clé primaire dans une entité JPA?
Quel type d'objet est nécessaire pour représenter une clé primaire dans une entité JPA?
Quel fichier nécessite une configuration spécifique pour l'unité de persistance ?
Quel fichier nécessite une configuration spécifique pour l'unité de persistance ?
Quel type d'EJB permet de créer une instance pour plusieurs connexions clientes ?
Quel type d'EJB permet de créer une instance pour plusieurs connexions clientes ?
Lors de l'utilisation de JPA, quelle annotation est utilisée pour spécifier le nom de la table dans la base de données?
Lors de l'utilisation de JPA, quelle annotation est utilisée pour spécifier le nom de la table dans la base de données?
Qu'est-ce qu'un POJO dans le contexte des entités JPA?
Qu'est-ce qu'un POJO dans le contexte des entités JPA?
Quel est un des premiers étapes dans la création d'une application EJB ?
Quel est un des premiers étapes dans la création d'une application EJB ?
Pourquoi est-il nécessaire de déclarer une clé primaire dans une entité JPA?
Pourquoi est-il nécessaire de déclarer une clé primaire dans une entité JPA?
Dans quelle table sont stockées les informations de l'employé et de son supérieur ?
Dans quelle table sont stockées les informations de l'employé et de son supérieur ?
Quel est le but du fichier Standalone.xml dans une application EJB ?
Quel est le but du fichier Standalone.xml dans une application EJB ?
Quel est le champ qui identifie de manière unique un client dans la base de données ?
Quel est le champ qui identifie de manière unique un client dans la base de données ?
Flashcards
Clients Non-Java
Clients Non-Java
Un client.Net, PHP, C++, etc., développé avec un langage autre que Java, communique avec les composants Web Services du serveur d'application en utilisant généralement le protocole SOAP (HTTP+XML).
Clients Mobiles
Clients Mobiles
Les clients mobiles (Androïde, iPhone, Tablette) communiquent avec les composants Web Services en utilisant généralement le protocole HTTP ou SOAP.
Couche Application
Couche Application
La couche Application est un médiateur entre la couche présentation et la couche métier. Elle gère les requêtes HTTP, les sessions, les autorisations, la validation des données, appelle les composants métier et génère des vues pour la présentation.
Couche Métier
Couche Métier
Signup and view all the flashcards
Séparation entre la couche DAO et la couche Métier
Séparation entre la couche DAO et la couche Métier
Signup and view all the flashcards
EJB (Entreprise Java Bean)
EJB (Entreprise Java Bean)
Signup and view all the flashcards
Qu'est-ce que les EJB?
Qu'est-ce que les EJB?
Signup and view all the flashcards
De quoi est composé un EJB?
De quoi est composé un EJB?
Signup and view all the flashcards
Quel est le rôle d'un serveur d'application pour les EJB?
Quel est le rôle d'un serveur d'application pour les EJB?
Signup and view all the flashcards
Quel est le rôle du conteneur EJB?
Quel est le rôle du conteneur EJB?
Signup and view all the flashcards
Comment les clients interagissent-ils avec les EJB?
Comment les clients interagissent-ils avec les EJB?
Signup and view all the flashcards
Quel est le rôle des Entity Beans?
Quel est le rôle des Entity Beans?
Signup and view all the flashcards
Quel est le rôle des Session Beans?
Quel est le rôle des Session Beans?
Signup and view all the flashcards
Quel est le rôle des Message Driven Beans?
Quel est le rôle des Message Driven Beans?
Signup and view all the flashcards
Interface Remote
Interface Remote
Signup and view all the flashcards
Interface Local
Interface Local
Signup and view all the flashcards
EJB Session
EJB Session
Signup and view all the flashcards
EJB Session @Stateless
EJB Session @Stateless
Signup and view all the flashcards
EJB Session @Stateful
EJB Session @Stateful
Signup and view all the flashcards
EJB Entity
EJB Entity
Signup and view all the flashcards
Annotations EJB
Annotations EJB
Signup and view all the flashcards
DataSource
DataSource
Signup and view all the flashcards
Fichier persistence.xml
Fichier persistence.xml
Signup and view all the flashcards
Interface EJB
Interface EJB
Signup and view all the flashcards
Interface IBanqueLocal
Interface IBanqueLocal
Signup and view all the flashcards
Interface IBanqueRemote
Interface IBanqueRemote
Signup and view all the flashcards
Clé primaire
Clé primaire
Signup and view all the flashcards
Mapping Objet-Relationnel
Mapping Objet-Relationnel
Signup and view all the flashcards
Annotation @Entity
Annotation @Entity
Signup and view all the flashcards
Annotation @Table
Annotation @Table
Signup and view all the flashcards
Annotation @Column
Annotation @Column
Signup and view all the flashcards
Annotation @Id
Annotation @Id
Signup and view all the flashcards
Annotation @GeneratedValue
Annotation @GeneratedValue
Signup and view all the flashcards
Annotation @Basic
Annotation @Basic
Signup and view all the flashcards
Annotation @Transient
Annotation @Transient
Signup and view all the flashcards
Annotation @OneToMany
Annotation @OneToMany
Signup and view all the flashcards
Annotation @ManyToOne
Annotation @ManyToOne
Signup and view all the flashcards
Annotation @ManyToMany
Annotation @ManyToMany
Signup and view all the flashcards
Annotation @OneToOne
Annotation @OneToOne
Signup and view all the flashcards
Nom JNDI pour EJB Stateless et Singleton (JBoss 7)
Nom JNDI pour EJB Stateless et Singleton (JBoss 7)
Signup and view all the flashcards
Nom JNDI pour EJB Stateful (JBoss 7)
Nom JNDI pour EJB Stateful (JBoss 7)
Signup and view all the flashcards
Interface locale dans un EJB
Interface locale dans un EJB
Signup and view all the flashcards
Interface distante dans un EJB
Interface distante dans un EJB
Signup and view all the flashcards
Classe Bean (EJB Session)
Classe Bean (EJB Session)
Signup and view all the flashcards
Study Notes
Chapitre 4: Entreprise Java Bean (EJB)
- L'application informatique répond aux besoins fonctionnels de l'entreprise.
- Les besoins fonctionnels varient selon le métier de l'entreprise.
- Les performances (temps de réponse, disponibilité, tolérance aux pannes, montée en charge) sont essentielles.
- La maintenance doit être possible : l'application doit évoluer, les modifications doivent être limitées et l'extension possible.
- La sécurité, la portabilité et la distribution sont importantes.
- L'application doit fournir des services à différents clients.
- Le coût doit être minimal.
Architecture de l'application J2EE
- L'architecture inclut un serveur d'application J2EE.
- Le serveur d'application est composé de plusieurs conteneurs tels que le Web Container (Couche Web), l'EJB Container (Couche Métier), et le SGBD.
- Le Client Java utilise RMI.
- Le Client Web utilise HTTP, SOAP, Servlet, JSP et Web Services.
- Les interactions entre les différentes couches de l'application sont illustrées dans un diagramme.
- L'application utilise une base de données (SGBD).
Couches de l'application
- Couche Présentation :
- Présente l'interface homme-machine de l'application.
- Dépend du type de client (client lourd, client léger ou mobile).
- Couche Application :
- Regroupe la couche web et la couche service.
- Médiateur entre la couche présentation et la couche métier.
- Couche Métier :
- Cœur de l'application.
- Gère les traitements métiers.
- Sépare la logique métier de l'accès aux données.
- Structure stable par rapport à la couche DAO (Data Access Object).
- Couche DAO :
- Gère l'accès aux données de la base de données.
EJB Entity (Persistance des données)
- Représentent des objets persistants.
- Stockent leurs états dans une base de données.
- Décrivent la structure de données manipulée par l'application.
- Permettent le partage de données entre applications.
- Gérés par JPA2 (EntityManager) et sessions beans.
- Les entités encapsulent les données d'une ou plusieurs tables.
- Les Beans Entity sont des POJO (Plain Old Java Object).
- Annotés avec @Entity pour être traités comme des entités.
- Doivent avoir au moins une propriété annotée @Id comme clé primaire.
- Les propriétés sont mappées sur les champs de la table de la base de données.
- Le mapping objet-relationnel utilise l'API JPA.
- Plusieurs annotations JPA sont utilisées (e.g., @Entity, @Table, @Column, @Id, @GeneratedValue).
- Les annotations @Basic, @Transient, @OneToMany, @ManyToOne, @ManyToMany, @OneToOne sont aussi utilisées pour le mapping.
EJB Session
- Trois types d'EJB Session:
- Stateless : sans état (une instance par connexion).
- Stateful: avec état (une instance par connexion).
- Singleton: une seule instance.
- Une interface Remote est accessible depuis d'autres machines.
- Une interface Local est accessible localement.
- Les annotations @Remote, @Local, @Stateless, @Stateful, et @Singleton sont utilisées pour définir les types de bean.
- L'attribut
name
de ces annotations permet de spécifier le nom JNDI.
Exemple de problème
- Gérer des comptes bancaires incluant les comptes courants et les comptes épargnes.
- Gérer des clients et des employés.
- Gérer les opérations (versements et retraits).
Déploiement
- Créer les entités Java (Client, Employé, Compte, Groupe, Opération).
- Créer la base de données et ses tables.
- Créer le fichier Standalone.xml configurant le Serveur JBoss.
- Configurer l'unité de persistance avec le fichier persistence.xml.
- Implémenter les interfaces Locale et Remote.
- Déployer le projet Java sur le serveur JBoss.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.