Les Enterprise Java Beans (version 3) SGBD

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Les Enterprise Java Beans (version 3) SGBD"

Transcription

1 Introduction Client léger Enterprise Java Bean (EJB) : Modèle de composants pour le développement d'applications d'entreprises Les Enterprise Java Beans (version 3) SGBD Modèle de programmation!! Par objet réparti!! Par envoie de message Gaël Thomas La plateforme à composant basée sur Java Université Pierre et Marie Curie Master Informatique M2 Spécialité SAR Client Riche Ne gère pas l hétérogénéité Largement influencé par RMI SGBD Introduction Master SAR - M2 MDOC - Introduction 2 Introduction Client léger : navigateur Web HTTP Enterprise Java Bean (EJB) A server-side component that encapsulates the business logic of an application Serveur WEB Conteneur WEB Service de transport : IIOP, RMI ou autre Cache Conteneur EJB Conteneur EJB Master SAR - M2 MDOC - Introduction On se focalise sur la logique applicative!!les services systèmes sont fournis par le conteneur!!la logique de présentation est du ressort du client!!les enterprise beans sont portables d'un serveur d'application à un autre Service BD : JDBC Client lourd Service Transaction: JTA/JTX Service Nommage : JNDI JEE But : simplifier le développement modulaire d applications réparties Base De Donnée Master SAR - M2 MDOC - Introduction 4

2 EJB : un composant!!uniquement Java Introduction!!Décrit en xml ou par annotation Java Conteneur EJB : la plateforme à composant définie par SUN!!Uniquement Java!!Programmation répartie!!orienté vers les serveurs d entreprise!!dynamiquement adaptable!!liaison par appel de méthode et par envoie de message!!outils de génération dynamique de souches et squelettes!!nombreux services systèmes Transaction, nommage, persistance, cycle de vie, transport Principe des Systèmes Informatiques Avancé 5 Trois types d'ejb Introduction Session : effectue une tâche pour un client!!avec état : un état spécifique par client!!sans état : pas d état spécifique (partagé entre clients ou non, dépend de l implémentation) Entity : représente une entité métier persistante!!associé à un tuple d une base de donnée!!gestion transparente de la persistance Message-Driven : un échangeur de messages asynchrones!!session bean sans état!!activé lors de la réception de messages Master SAR - M2 MDOC - Introduction 6 Deux interfaces d accès :!!Interface locale : invocation uniquement dans la même JVM!!Interface distante : invocation distante interface Un code métier : distante!!implantation des méthodes de l interface Différence par rapport à RMI?!!Gestion automatique du cycle de vie!!facilité d accès aux autres services systèmes!!un bean par client Code Code Code métier métier métier interface locale Machine Virtuelle Java L interface : rien de particulier package test; public interface HelloWorld { public void sayhello(); Le code métier : public class HelloWorldBean implements HelloWorld { public void sayhello() { System.out.println("Hello, World!!!"); Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 8

3 Quelques remarques : Nommage : chaque recherche renvoie une nouvelle instance!! name : nom EJB du bean par défaut : le nom de la classe!! mappedname : nom dans le service de nommage global (JNDI, voir cours suivant) Utile pour les clients lourds Interfaces d accès : indique l interface externe, plusieurs interfaces : indique l interface interne, plusieurs interfaces possibles!! Par défaut des interfaces directes Utilisation d un Session Bean à partir d un autre Session Bean public interface Test { public void public class TestBean implements Test HelloWorld hw; Avec ou sans état :!! Bean sans état : état indépendant du client (attention, partage possible)!! Bean avec état : état propre à chaque Bean public void test() { hw.sayhello(); Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 10 Utilisation d un Session Bean à partir d un client Lourd public static void main(final String[] args) throws Exception { Context ic = new InitialContext(); Test test = test.test(); InitialContext : service de nommage (voir cours JNDI) Le client ne peut utiliser que le nom JNDI, pas le nom du Bean Lancer le client : dans un conteneur client (avec Jonas : jclient au lieu de java) Injection de ressources!!accès à d autres objets enregistrés dans le service de public class TestBean implements Test "jdbc_1") Object o; Remarque : jdbc_1 est le nom par défaut donné au gestionnaire de connexions vers la base de donnée sous Jonas (voir cours JDBC) Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 12

4 Suppression de Session Bean : Interception des changements d état du cycle de vie Explicite après l invocation d une void del() { System.out.println("Va être public void initialise() { initialise le public void detruit() { destruction du Bean Fonction destroy() : appelée juste avant toute suppression!!après un appel explicite à une méthode du déchargement du Bean Attention void destroy() {! fonction appelée deux fois!! public void avantswap() { Bean va être mis en public void apresswap() { Bean vient d être rechargé Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 14 Interception de méthodes métier Utile pour debuggage, monitoring, changement de paramètres, évolution d API Compilation : javac classique Ajouter le.jar javaee dans le classpath :!!Invoquée à la place de toute méthode métier!!sauf si elle public Object intercept(invocationcontext ic) throws Exception { System.out.println("*** intercept la méthode '" + ic.getmethod().getname() try { return invocationcontext.proceed(); finally { System.out.println("*** fin"); Master SAR - M2 MDOC - Introduction 15 Packaging : dans un fichier.jar classique /test/helloworld.class /test/helloworldbean.class /test/test.class /test/testbean.class Déploiement (sous Jonas) : copie dans le répertoire deploy Master SAR - M2 MDOC - Introduction 16

5 Entity Bean = tuple d une base de donnée Exemple de base Entity Bean : POJO (Plain Old Java Object)!!Champs du POJO = colonne d une table API des Entity Bean : JPA (Java Persistance API) Unification des APIs Hibernate, TopLink Gestion (quasi-)transparente de = "FILMS") public class Film implements = GenerationType.AUTO) private int id; private String name; public int getid() { return id; public void setid(int id) { this.id = id; public String getname() { return name; public void setname(final String name) { this.name = name Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction ou rien : indique qu un champs est persistant Les jointures entre EntityBean Tous les champs sont persistants Changer le nom de la colonne de la BD int nomjava; Table associée au tuple Pas nécessaire de de mettre tous les champs de la table Clé primaire obligatoire : type primitif ou : indique comment sont générés les clés Auto, Identity, Sequence, Table Cardinalité des relations :!!1-1!!1-n (ex. : une commande contient n lignes)!!n-1 (ex. : plusieurs ligne de commandes peuvent concerner le même produit)!!n-n (ex. : un cours comporte +sieurs étudiants qui suivent +sieurs cours) Dénomination : OneToOne, OntToMany, ManyToOne, ManyToMany Principe : un unique propriétaire de la relation Propriétaire : tuple qui possède la clé externe Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 20

6 Exemple de jointure : «un film est joué dans des salles» Exemple de jointure create table FILMS ( id integer primary key auto_increment, name VarChar(256) ); create table SALLES_PROG ( id integer primary key auto_increment, salle_id integer, film_id integer, foreign key (salle_id) references SALLES(id), foreign key (film_id) references FILMS(id) ); Dans le Bean Film = "film", fetch=fetchtype.eager, cascade=cascadetype.all) private List<SalleProg> salles; Dans le bean SalleProg = "film_id") private Film film; Champs De jointure chez le propriétaire film_id : clé étrangère! propriétaire : SALLES_PROG Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 22 Complément sur les jointures Utilisation des EntityBeans : dans des SessionBeans Fetch : façon de gérer la jointure (aussi paramètre : au plus tôt (nécessaire si Serializable)!!FetchType.LAZY : au plus tard (inutilisable avec Serializable) Cascade : cascade des opérations entre les beans!!cascadetype.all : toute opération propagée!!cascadetype.merge : merge entre deux beans (voir + loin dans le cours)!!cascadetype.persist : Film devient persistant! List<SalleProg> aussi!!cascadetype.refresh : rechargement à partir de la base!!cascadetype.remove : suppression en cascade L EntityManager : gestionnaire de persistance public interface Cinema{ Film findfilm(int public class CinemaBean implements Cinema private EntityManager em; Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 24

7 Etat d un Entity Bean Attaché : géré par l entity manager Modification répercutée dans la BD!!Tout Entity Bean renvoyé par l entity manager Détaché : non géré par l entity manager Modification non répercutée dans la BD!!Nouveau Bean!!Copie de Bean (après sérialisation) L EntityManager : attachement et détachement!! void merge(object entity) : synchronise l état persistant du bean Utilisable sur un bean détaché. Ne rattache pas le bean. Utile lorsque le Bean est modifié chez le client et renvoyé au serveur.!! void persist(object entity) : rend l entité persistante et attachée Utilisable sur un nouveau Bean (après un new) Film createfilm(string name) { Film film= new Film(); res.setname(name); em.persist(film); // attache le bean + rend persistant return film; // la copie est bien sûr détachée Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 26 Principales méthode d un EntityManager!! Object find(class cl, Object key) : Trouve un EntityBean à partir de sa clé primaire!! boolean contains(object entity) : Vrai si entity est attaché à l EntityManager!! Query createquery(string qlstring) : Création d une requête dans le langage «query language»!! Query createnamedquery(string name) : Création d une requête nommée!! Query createnativequery(string sqlquery) : Création d une requête dans le langage SQL!! void remove(object entity) : Supprime l entity de la base!! void refresh(object entity) : Recharge le bean à partir de la base Exemple d utilisation Trouver un film à partir de sa clé primaire : public void findfilm(int id) { return em.find(film.class, Integer.valueOf(id)); Supprimer un film : public void removefilm(int id) { em.remove(findfilm(id)); Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 28

8 Le langage «Query Language» : langage de requête proche de SQL!!Sélection à partir du nom du Bean!!Paramètres indiqués par :nom-du-parm!!positionnement des requêtes dans l objet Query!!Demande d une liste de résultats à partir de l objet Query Exemple : public Film findfilmbyname(string name) { Query q = em.createquery( "select f from Film where f.name = :fname"); q.setparameter("fname", name); List<Film> res = q.getresultlist(); return res.size() == 0? null : res.get(0); Requête nommée : définie avec = "findallfilms", query = "select f from Film = "findfilmbyname", query = "select f from Film f WHERE f.name = :fname") ) public class Film implements java.io.serializable { Utilisation dans le SessionBean : void findfilmbyname() { Query q = em.createnamedquery("findfilmbyname"); Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 30 Les Entity Beans (version 3) Interception des changements d état du cycle de vie Le descripteur de déploiement Autour de la création (em.persist) Lors du chargement à partir de la base (em.find, Autour des mises à jour (modification de champs, Autour de la suppression <persistence xmlns= " version="1.0"> <persistence-unit name="entity" transaction-type="jta"> <provider></provider> <jta-data-source>jdbc_1</jta-data-source> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.hsqldialect" /> <property name="hibernate.hbm2ddl.auto" value="create-drop"/> </properties> </persistence-unit> </persistence> Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 32

9 Les Messages Driven Bean (version 3) Message driven Bean : interaction par messagerie MOM : Message Oriented Middleware Deux modes de communication!!n vers 1 : Queue!!N vers M : Topic Message Driven Bean : repose sur la spécification JMS JMS : Java Message Service Les Messages Driven Bean (version 3) Principe des Message Driven Bean!!Consomme des messages asynchrones!!pas d'état (toutes les instances d'une même classe de MDB équivalentes)!!peut traiter les messages de clients!!1 seule méthode métier (onmessage)! Paramètres imposés! Pas de valeur de retour! Pas d'exception Quand utiliser un MDB!!Éviter appels bloquants!!découpler clients (producteurs) et serveurs (consommateurs)!!besoin de fiabilité : protection crash serveurs Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 34 Les Messages Driven Bean (version 3) La spécification JMS (java.sun.com/jms) Queue : file de discussion (un seul consommateur) Topic : sujet de discussion (diffusion) ConnectionFactory : usine à connexions vers queue/topic Connection : connexion vers queue/topic Les Messages Driven Bean (version 3) Architecture Java Message Service (pour le queue, remplacer Topic par Queue, Publisher par Sender, Subscriber par Receiver) NameService JTCF montopic TopicConnectionFactory TopicConnection TopicSession Session :!!Création d émetteur et récepteur!!peut être rendue transactionnelle TopicPublisher Message Topic Message TopicSubscriber Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 36

10 Les Messages Driven Bean (version 3) Développement d un Message Driven Bean Les Messages Driven Bean (version 3) Exemple d émetteur = propertyname = "destination", propertyvalue = propertyname = "destinationtype", propertyvalue = "javax.jms.topic")) public class Mdb implements MessageListener { public void onmessage(message inmessage) { System.out.println(((TextMessage)msg).getText()); Master SAR - M2 MDOC - Introduction mappedname="topic_rigolo") Topic mappedname="jtcf") TopicConnectionFactory factory; TopicSession session; TopicPublisher sender; public void publish(string value) { TopicConnection tc = factory.createtopicconnection(); session = tc.createtopicsession(false, Session.AUTO_ACKNOWLEDGE); sender = session.createpublisher(topic); TextMessage msg = session.createtextmessage(); msg.settext("mdb: " + value); sender.publish(msg); Master SAR - M2 MDOC - Introduction 38 Historique Différence majeure entre version 2 et version 3 Présence de Home (Usine) dans les Session Beans!!Usine enregistrée dans le service de nommage!!obtention d un bean via l usine (home.create()) Pas d EntityManager!!Gestion de la persistance via la Home de l EntityBean (homefilm.findbyname("les Vikings")) Version 2 : beaucoup de XML Difficile à maintenir Version 3 : beaucoup d annotation Historique Maintenance simplifiée Possibilité d utiliser du XML à la place Entity Bean non sérializable!!pas de notion de DTO (Data Transfert Object)!!Entity Bean toujours attaché Master SAR - M2 MDOC - Introduction Master SAR - M2 MDOC - Introduction 40

11 Conclusion Enterprise Java Bean!!Composants Java!!Programmation répartie!!facile à mettre en œuvre!!très bonne amélioration de l ergonomie avec la version 3 Fonctionnement interne!!relativement compliqué (quatre cours pour l étudier!)!!demande de bonnes base Master SAR - M2 MDOC - Introduction 41

TP6 EJB : Création d'un EJB3 Entité

TP6 EJB : Création d'un EJB3 Entité TP6 EJB : Création d'un EJB3 Entité Objis : nous allons vous faire aimer JAVA - www.objis.com 1 Table des matières Formation EJB - TP 'Développement EJB3 entity avec Eclipse' Propriété du document...3

Plus en détail

Architecture des systèmes d information répartis

Architecture des systèmes d information répartis Architecture des systèmes d information répartis Cours 2 : servlets et BD, EJB Sorina Ionica 1 JDBC Architecture multicouche J2EE Couche client Conteneur d'applet Applet Couche Web Conteneur Web J2EE Couche

Plus en détail

Architectures à composants

Architectures à composants Interaction requête/réponse Architectures à composants!communication par requête/réponse client requête réponse serveur Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique

Plus en détail

Objectifs. Comprendre l architecture typique d une application web Exemple: Expérimenter avec:

Objectifs. Comprendre l architecture typique d une application web Exemple: Expérimenter avec: Cedric Dumoulin Objectifs Comprendre l architecture typique d une application web Exemple: Application permettant de lister un catalogue d articles, et de créer des articles Expérimenter avec: EJB, JPA

Plus en détail

Java Naming and Directory Interface

Java Naming and Directory Interface Introduction Java Naming and Directory Interface Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique M2 Spécialité SAR Java Naming and Directory Interface (JNDI) Java Standard

Plus en détail

Java Persistence Api. 1. Introduction. 2. Un premier exemple. 3. L application. benoit.charroux@efrei.fr

Java Persistence Api. 1. Introduction. 2. Un premier exemple. 3. L application. benoit.charroux@efrei.fr Java Persistence Api Cet article décrit une application qui illustre comment la sauvegarde d un graphe d objets peut être réalisé en Java Standard Edition via Java Persistence Api. 1. Introduction Java

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

Servlets, beans, base de données

Servlets, beans, base de données Institut Galilée E-services Année 2014-2015 Master 2 T.P. 2 Servlets, beans, base de données L objectif de ce TP est de mettre en place un site web pour l administration et la commande de pizzas : une

Plus en détail

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

1. Installation d'un serveur d'application JBoss:

1. Installation d'un serveur d'application JBoss: EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download

Plus en détail

Table des matières. TP JEE (2) Logic metier et Entreprise Java Beans. IUT Bordeaux 1 - Département Informatique

Table des matières. TP JEE (2) Logic metier et Entreprise Java Beans. IUT Bordeaux 1 - Département Informatique IUT Bordeaux 1 - Département Informatique Semestre 4 JEE 20112012 TP JEE (2) Logic metier et Entreprise Java Beans Les EJB (Enterprise JavaBeans) 3.0 permettent de découpler la logique de présentation

Plus en détail

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs.

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs. Cours Serveurs d application et Java avancé Introduction au cours Serveurs d application et Java avancé ITU Université de Nice Richard Grin Version O 1.0.1 12/4/14 20 h de cours et TPs Richard Grin, université

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean. Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime

Plus en détail

Les Systèmes et Applications Réparties et leur Programmation

Les Systèmes et Applications Réparties et leur Programmation Les Systèmes et Applications Réparties et leur Programmation Samia Bouzefrane Maître de Conférences Laboratoire CEDRIC Conservatoire National des Arts et Métiers 292 rue Saint Martin 75141 Paris Cédex

Plus en détail

TP N 4 Création d un projet Web Avec EJB JSF et Glassfish

TP N 4 Création d un projet Web Avec EJB JSF et Glassfish TP N 4 Création d un projet Web Avec EJB JSF et Glassfish I. Les objectifs :... 1 II. L architecture de l atelier... 1 III. Rappel... 1 IV. L environnement de développement... 2 V. Création d un projet

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

Spécification du profil UML d assemblage cible EJB (version 1)

Spécification du profil UML d assemblage cible EJB (version 1) Spécification du profil UML d assemblage cible EJB (version 1) Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti) Référence : Livrable 2.2 Date : 31 mai 2002

Plus en détail

Principes d'utilisation des systèmes de gestion de bases de données

Principes d'utilisation des systèmes de gestion de bases de données Principes d'utilisation des systèmes de gestion de bases de données JDBC L3 Informatique Emmanuel Waller, LRI, Orsay Université Paris Sud le mode programme JDBC JDBC : qu'est ce que c'est? Avantages? devant

Plus en détail

Technologies distribuées

Technologies distribuées Technologies distribuées Java EE 5 Introduction! L entreprise et le Java EE Définition Les de type EJB Les de type services 1 2 Introduction! Compétences acquises " Compréhension " Interventions " Affranchir

Plus en détail

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier Etude de cas PLM Patrice TORGUET IRIT Université Paul Sabatier Plan Exemple PLM Répartition avec Sockets Répartition avec RMI Répartition avec CORBA Répartition avec JMS Répartition avec Java EE Améliorations

Plus en détail

Modèle à messages. Daniel Hagimont. IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7. Remerciements.

Modèle à messages. Daniel Hagimont. IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7. Remerciements. Modèle à messages Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr Remerciements André Freyssinet 1 Plan

Plus en détail

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI JAVA, CORBA et RMI objectif : développer des applications client/serveur incluant des objets répartis Java / CORBA : client/serveur hétérogènes Java / RMI : client/serveur homogènes plan : l architecture

Plus en détail

JPA: Java Persistence API

JPA: Java Persistence API 1 2 Objet JPA JPA: Java Persistence API @Entity public class Vin implements java.io.serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id = null; private String nomvin;

Plus en détail

EXA1415 : Annotations JavaEE : @Local, @Stateful

EXA1415 : Annotations JavaEE : @Local, @Stateful EXA1415 : Annotations JavaEE : @Local, @Stateful Sur une idée de P. Sécheresse sur http://developpez.com (http://tinyurl.com/5gr57j) Diapo 1 Objectif Créer un EJB CalculatriceBean (V1) Contient une opération

Plus en détail

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 Plan 1. Généralités sur la persistance des données dans les applications 2. La connection

Plus en détail

Institut Supérieur De Gestion De Tunis 3 ème LFIG BAYOUDHI Chaouki

Institut Supérieur De Gestion De Tunis 3 ème LFIG BAYOUDHI Chaouki Exemple JSF EJB et Bean géré I. Enoncé : Cet exemple est une petite application web proposant deux pages web : L une qui affiche un formulaire afin de pouvoir ajouter un livre (AjoutLivre.xhtml), L autre

Plus en détail

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique»

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Java EE Approfondi - Cours 2 Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Présentation Lier l'orienté objet et la base de données relationnelle peut être lourd et consommateur en temps.

Plus en détail

Projet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion

Projet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion Projet But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables événements Serveur de diffusion 1 JMS Java Message Service PHAN Quang-Hai ISTR 04/05/2004

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX

Plus en détail

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

J o n a t h a n M E R C I E R. - J2EE - Enterprise JavaBeans

J o n a t h a n M E R C I E R. - J2EE - Enterprise JavaBeans J o n a t h a n M E R C I E R - J2EE - Enterprise JavaBeans Module Génie Logiciel Année 2006/2007 P l a n Introduction (J2EE) Présentation des EJB EJB : les concepts Processus de développement, de déploiement

Plus en détail

Objets distribués et Appel de Méthodes à Distance 2009-2010

Objets distribués et Appel de Méthodes à Distance 2009-2010 Objets distribués et Appel de Méthodes à Distance 2009-2010 1 Objectif : construire une application où différents modules peuvent être situés sur des machines différentes, en utilisant un modèle à objets

Plus en détail

Java. Persistent API. Auteur : PEREZ Noël. Date : Octobre 2009. nperez@hinnoya.fr

Java. Persistent API. Auteur : PEREZ Noël. Date : Octobre 2009. nperez@hinnoya.fr Java Persistent API Auteur : PEREZ Noël nperez@hinnoya.fr Date : Octobre 2009 Plan Principes des Frameworks de persistence Historique JPA 1.0 JPA 2.0 Demo Questions? JUG Lyon / oct 2009 Java Persistent

Plus en détail

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr Grégory Cuellar Julien Goullon gregory.cuellar@bull.net julien.goullon@9business.fr 1 er octobre 2007 1 Généralité 2 / 54 Pourquoi? Historique Les alternatives Les composants 2 Architecture n-tiers 3 JEE

Plus en détail

TP SPRING. https ://lipn.univ-paris13.fr/ fortier/enseignement/spring/tp/

TP SPRING. https ://lipn.univ-paris13.fr/ fortier/enseignement/spring/tp/ Institut Galilée Année 2015-2016 TP SPRING Programmation et Logiciels sûrs Master 2 PLS Résumé L objectif de ce TP est d être capable de réaliser une application Java de gestion de location de véhicules,voiture

Plus en détail

Mapping Objet/Relationnel

Mapping Objet/Relationnel Mapping Objet/Relationnel I. Mougenot (isabelle.mougenot@univ-montp2.fr) Faculté des Sciences Université Montpellier 2 2014 Mougenot (UM2) FMIN362 Cours2 2014 1 / 14 Les limites du relationnel 1 Première

Plus en détail

Petstore - EJB3 Entity

Petstore - EJB3 Entity Petstore - EJB3 Entity Le tutorial aborde les différentes étapes pour implémenter les EJB3 entity. Toutes les sources du Petstore sont développées. L'application est déployée sous JBoss 5.1.0.GA. J. HILDEBRAND

Plus en détail

TD sur JMS ---- 1) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

TD sur JMS ---- 1) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS? TD sur JMS ---- Questions de cours : 1) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS? MOM : Message Oriented Middleware Intergiciels orientés Messages

Plus en détail

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static Plan Environnement Client/Serveur Cours 6 Rappels Java (suite) Appel de méthode à distance kn@lri.fr http://www.lri.fr/~kn 1 Rappels sur les systèmes d'exploitations / Communication par mémoire partagée

Plus en détail

Auto-évaluation Aperçu de l architecture Java EE

Auto-évaluation Aperçu de l architecture Java EE Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU

Plus en détail

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Introduction Le but de ce TP est de programmer une application à la norme EJB en utilisant le serveur d application JBoss. Matériel requis - JBoss

Plus en détail

Conception de serveurs d'applications ouverts

Conception de serveurs d'applications ouverts Conception de serveurs d'applications ouverts 2/3 Stéphane Frénot 1 CS : Du C/S au middleware Explicite Le client et le serveur sont développés en collaboration Objet distant : Client et serveur sont liés

Plus en détail

TP1 - Entreprise Java Beans

TP1 - Entreprise Java Beans TP1 - Entreprise Java Beans Réseaux Middlewares - Jules Chevalier 1 Configuration Minimale Pour ce TP, vous aurez besoin de outils suivants : Un JDK installé (le JRE est insuffisant) Un IDE édition Java

Plus en détail

La plate-forme Java RMI

La plate-forme Java RMI La plate-forme Java RMI Frank Singhoff Bureau C-202 Université de Brest, France Lab-STICC/UMR 3192 singhoff@univ-brest.fr UE systèmes à objets répartis, Université de Brest Page 1/25 Sommaire 1. Le modèle

Plus en détail

Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes en banque (Philippe.Genoud@imag.fr)

Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes en banque (Philippe.Genoud@imag.fr) Grenoble 1 IMA Informatique & Mathématiques Appliquées UNIVERSITE JOSEPH FOURIER Sciences, Technologie, Médecine Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/57 Ces transparents, ainsi que les énoncés

Plus en détail

Construire un service web Java EE avec l'ide Netbeans 6.5 et le serveur Java EE Glassfish

Construire un service web Java EE avec l'ide Netbeans 6.5 et le serveur Java EE Glassfish Construire un service web Java EE avec l'ide Netbeans 6.5 et le serveur Java EE Glassfish Serge Tahé, février 009 http://tahe.developpez.com /78 Le texte qui suit fait référence aux documents suivants

Plus en détail

Outils d'audit et diagnostic d'applications Java EE avec JOnAS

Outils d'audit et diagnostic d'applications Java EE avec JOnAS Outils d'audit et diagnostic d'applications Java EE avec JOnAS 18 Mars 2010 Mathieu.Ancelin@serli.com Florent.Benoit@bull.net Plan Contexte Outil de diagnostic Outil d'audit Démo Futur 2 Contexte 3 Pourquoi?

Plus en détail

Java Enterprise Edition EJB3 / Troisième partie. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur

Java Enterprise Edition EJB3 / Troisième partie. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur Java Enterprise Edition EJB3 / Troisième partie Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur 1 Plan Cycle de vie et callbacks Intercepteurs Transactions et sécurité Timers 2 Cycle de vie Les

Plus en détail

RMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.

RMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. RMI Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. Méthode proche de RPC. Outils et classes qui rendent l'implantation d'appels de méthodes d'objets distants aussi simples

Plus en détail

Guide Pratique EDI NetBeans

Guide Pratique EDI NetBeans Guide Pratique EDI NetBeans Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table des matières Assistant type de Projet EJB...2 Structure Module EJB...5 Ajout d'ejb, Fichiers et Bibliothèques

Plus en détail

Architecture Logicielle

Architecture Logicielle Architecture Logicielle Les applications d'entreprise exemple : La technologie JEE Année universitaire 2013/2014 Semestre 1 Introduction Une application d'entreprise a généralement les caractéristiques

Plus en détail

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux Avant-propos 1. À qui s adresse ce livre? 11 2. Les pré-requis 12 Préambule 1. Rappel sur les architectures Internet/Intranet/Extranet 13 1.1 Le protocole HTTP 14 1.1.1 Les méthodes HTTP 16 1.1.2 Les codes

Plus en détail

Java Remote Method Invocation

Java Remote Method Invocation Java Remote Method Invocation Ce support est très largement inspiré du livre et du cours de S. Krakowiak S. Krakowiak Java Remote Method Invocation 1 / 25 Intérêt des objets pour la construction d applications

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe

Plus en détail

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement: Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

EJB3.1/Java EE 6. S. Rosmorduc, Conservatoire National des Arts et Métiers (avec des vrais bouts de transparents de Marc Le Bihan dedans)

EJB3.1/Java EE 6. S. Rosmorduc, Conservatoire National des Arts et Métiers (avec des vrais bouts de transparents de Marc Le Bihan dedans) EJB3.1/Java EE 6 S. Rosmorduc, Conservatoire National des Arts et Métiers (avec des vrais bouts de transparents de Marc Le Bihan dedans) 1 Bibliographie et sources Oracle Java EE 6 tutorial A. Goncalves,

Plus en détail

Les Enterprise JavaBeans

Les Enterprise JavaBeans Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/ Claude Duvallet 1/228

Plus en détail

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

Plus en détail

Une introduction à la technologie EJB

Une introduction à la technologie EJB Une introduction à la technologie EJB 1 Introduction La technologie des EJB (pour Enterprise Java Bean) ont été introduite en 1998 pour offrir aux programmeurs un outil qui facilite la conception et le

Plus en détail

PHP OO et Pear DB. Olivier Perrin IUT Nancy-Charlemagne Département Informatique Université Nancy 2. Olivier.Perrin@loria.fr

PHP OO et Pear DB. Olivier Perrin IUT Nancy-Charlemagne Département Informatique Université Nancy 2. Olivier.Perrin@loria.fr PHP OO et Pear DB Olivier Perrin IUT Nancy-Charlemagne Département Informatique Université Nancy 2 Olivier.Perrin@loria.fr Classes et objets en PHP Une classe PHP regroupe des variables d instance, représentés

Plus en détail

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java (application avec Java RMI) Éric Leclercq Département IEM / Laboratoire LE2i Décembre 2010 émail : Eric.Leclercq@u-bourgogne.fr

Plus en détail

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions PROJET : ETNIC ESB JANUS Guide technique : WS- BULL Services et Solutions Date : 20 novembre 2008 Version : 1.0 Référence Bull : ETNIC_ESB/ANA/00 Auteur : NOSEDA Anne Projet ETNIC ESB JANUS Guide technique

Plus en détail

Filière : M2 informatique Année universitaire : 2014-2015 Cours : Réutilisation et composants TP EJB 2

Filière : M2 informatique Année universitaire : 2014-2015 Cours : Réutilisation et composants TP EJB 2 Université Montpellier II Faculté des Sciences Département Informatique Filière : M2 informatique Année universitaire : 2014-2015 Cours : Réutilisation et composants TP EJB 2 Objectifs du TD Développer

Plus en détail

Cours client-serveur Web : Java et RMI (Remote Method Invocation)

Cours client-serveur Web : Java et RMI (Remote Method Invocation) Cours client-serveur Web : Java et RMI (Remote Method Invocation) 1 Java: Rappel sur les threads Cycle de vie d un thread (1) Né -> prêt appel de la méthode start du thread Prêt Exécution Distribution

Plus en détail

Booster vos développements avec Spring Boot

Booster vos développements avec Spring Boot Booster vos développements avec Spring Boot Julien Sadaoui Développeur Java @juliensadaoui juliensadaoui La plateforme spring La plateforme spring public class BookService { @PersistenceContext private

Plus en détail

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Développement JEE 5 avec Eclipse Europa K a r i m D j a a f a r A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Groupe Eyrolles, 2008, ISBN : 978-2-212-12061-5 Table des matières

Plus en détail

Licence MISIGD promotion 2016 Projet fin de spécialité composants logiciels IUT Vélizy JJLC

Licence MISIGD promotion 2016 Projet fin de spécialité composants logiciels IUT Vélizy JJLC Licence MISIGD promotion 2016 Projet fin de spécialité composants logiciels IUT Vélizy JJLC Sujet Il s'agit de réaliser une application d'inscription à une newsletter. L'application est une application

Plus en détail

Programmation par RPC et Java-RMI :

Programmation par RPC et Java-RMI : 2A-SI 3 Prog. réseau et systèmes distribués 3.2 et JavaRMI Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de l équipe pédagogique du

Plus en détail

Java Enterprise Edition EJB3. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur

Java Enterprise Edition EJB3. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur Java Enterprise Edition EJB3 Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur 1 Plan Introduction Java EE Enterprise Java Beans (EJB) EJB 3.0 EJB et Java EE Matthieu EXBRAYAT Master 2 RIA / ULP

Plus en détail

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année Java RMI Programmation des applications réparties Olivier Flauzac URCA Master EEAMI-Informatique première année Olivier Flauzac (URCA) PAR : Java RMI MSTIC-INFO 1 1 / 30 1 RMI 2 Architecture 3 Développement

Plus en détail

Modèle Client-Serveur Partage du serveur entre clients

Modèle Client-Serveur Partage du serveur entre clients Modèle Client-Serveur Partage du serveur entre clients Un serveur peut servir plusieurs clients Vu d un client particulier client requête réponse serveur Vu du serveur Gestion des requêtes (priorité) Exécution

Plus en détail

Les enterprises Java Beans

Les enterprises Java Beans Enterprise Java Beans http://java.sun.com/products/ejb/index.html Les enterprises Java Beans Michel RIVEILL riveill@unice.fr - http://rangiroa.essi.fr/riveill Laboratoire I3S Architecture permettant la

Plus en détail

Tour d horizon de Java EE 6

Tour d horizon de Java EE 6 1 Tour d horizon de Java EE 6 De nos jours, les entreprises évoluent dans une compétition à l échelle mondiale. Elles ont besoin pour résoudre leurs besoins métiers d applications qui deviennent de plus

Plus en détail

Java Messaging Service. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur

Java Messaging Service. Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur Java Messaging Service Matthieu EXBRAYAT Master 2 RIA Université Louis Pasteur 1 Messagerie Mécanisme permettant de faire communiquer deux programmes Il existe de nombreux systèmes de messagerie??? Middleware

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

JORAM. un intergiciel de communication asynchrone André Freyssinet ScalAgent Distributed Technologies. Andre.Freyssinet@scalagent.

JORAM. un intergiciel de communication asynchrone André Freyssinet ScalAgent Distributed Technologies. Andre.Freyssinet@scalagent. JORAM un intergiciel de communication asynchrone André Freyssinet ScalAgent Distributed Technologies Andre.Freyssinet@scalagent.com www.scalagent.com Objectifs Développer des applications «JMS» Utilisation

Plus en détail

Création d une application JEE

Création d une application JEE Création d une application JEE Rédacteurs : Alexandre Baillif, Philippe Lacomme, Raksmey Phan et Michaël PLAN Date : juillet 2010 Mise à jour : Michaël PLAN Date : octobre 2014 Avertissement : - ce document

Plus en détail

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 ARCHITECTURE REST & WEB SERVICES Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 1 Introduction Présentation de Rest Serveur Java JAX-RS Démonstration 2 Introduction Présentation de Rest

Plus en détail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours 6 : JDBC : ou comment lier ORACLE avec Java 1ère partie Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Introduction 2 les étapes de la connexion

Plus en détail

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

Plus en détail

Site Web de paris sportifs

Site Web de paris sportifs Conception Nom HENAUD Benoît Numéro d auditeur 05-39166 Version V1.1 Date de mise à jour 15/05/2008 1/18 Table des matières 1. Objectif du document... 3 2. Architecture... 4 2.1. Contraintes techniques...

Plus en détail

Architectures n-tiers et applications Web Outils Java et applications Web Servlets État d un servlet Les JSP Accès aux BD avec servlets Conception

Architectures n-tiers et applications Web Outils Java et applications Web Servlets État d un servlet Les JSP Accès aux BD avec servlets Conception Plan 231 Architectures n-tiers et applications Web Outils Java et applications Web Servlets État d un servlet Les JSP Accès aux BD avec servlets Conception JDBC - Rappels 232 JDBC: API qui permet de stocker,

Plus en détail

1- Créer notre DatabaseHelper, enfant de SQLiteOpenHelper (permet de créer nos tables) 2- Créer notre Model qui contiendra les requêtes

1- Créer notre DatabaseHelper, enfant de SQLiteOpenHelper (permet de créer nos tables) 2- Créer notre Model qui contiendra les requêtes B53 Android SQLite SQLite est intégrée au moteur d exécution d Android. Il s agit d un SGBD très apprécié car il fournit une interface SQL tout en nécessitant un minimum de mémoire et en fournissant une

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

Workflow management with JMS

Workflow management with JMS Workflow management with JMS Services Frigout Arnaud Zerbita Mohamed el hadi Gueye Oumar 2010-2011 Master 2 - ALMA Table des matières 1 Introduction et Concepts JMS 2 1.1 Introdution............................................

Plus en détail

Modèle client-serveur

Modèle client-serveur Modèle client-serveur Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr 1 Plan Principes généraux Modèle

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Urbanisation et architecture des systèmes d information

Urbanisation et architecture des systèmes d information Urbanisation et architecture des systèmes d information Plate forme pour le composant logiciel 2/2 JAVA, JEE et les EJB David Eudeline eudeline.david@free.fr JAVA Qu'est ce que JAVA? Un langage très jeune

Plus en détail

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Développement JEE 5 avec Eclipse Europa K a r i m D j a a f a r A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Groupe Eyrolles, 2008, ISBN : 978-2-212-12061-5 10 L API JPA et la

Plus en détail

TP4 : Services Web REST

TP4 : Services Web REST TP4 : Services Web REST Développement d un service REST pour la réservation d un hôtel L objectif de cet exercice est le de veloppement de services REST à pàrtir de clàsses Jàvà pour là recherche et là

Plus en détail

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base SOA et Services Web 23 octobre 2011 1 SOA: Concepts de base 2 Du client serveur à la SOA N est Nest pas une démarche entièrement nouvelle: années 1990 avec les solutions C/S Besoins d ouverture et d interopérabilité

Plus en détail

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306 TP Java RMI Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 Paradigme RMI RMI (Remote Method Invocation) RPC orientés objet (encapsulation, héritage,...) objet :

Plus en détail

Gestion des transactions

Gestion des transactions 8 Gestion des transactions Au sommaire de ce chapitre U Problèmes associés à la gestion des transactions U Choisir une implémentation de gestionnaire de transactions U Gérer les transactions par programmation

Plus en détail

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP Chapitre 9 Dans ce chapitre nous abordons le mécanisme RMI (Remote Method Invocation) permettant le développe ment des systèmes répartis. Nous expliquerons comment les classes d un serveur peuvent être

Plus en détail

WWW - Intérêts du Web

WWW - Intérêts du Web WWW - Intérêts du Web client universel facilité d'emploi standards ouverts intégration des autres services Internet extensibilité du système faibles coûts logiciel et réseau utilisation au sein d'une entreprise

Plus en détail