Projet MiniCyberCoach

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

Download "Projet MiniCyberCoach"

Transcription

1 ADVANCED SOFTWARE ENGINEERING Cours de Master en Informatique Prof. Jacques Pasquier-Rocha Projet MiniCyberCoach Catherine Pugin Florian Evéquoz Pierre-Olivier Volet Université de Fribourg, le 28 janvier 2004

2 Contenu CONTENU 2 INTRODUCTION 3 TÂCHES RÉALISÉES 4 1. IMPLÉMENTATION DES ENTITY BEANS (GÉNÉRATION DE LA BD INCLUSE) ECRITURE DES CLASSES DES COMPOSANTS INSERTION DES BALISES XDOCLET DANS LES CLASSES DES COMPOSANTS IMPLÉMENTATION D'UNE SERVLET TEST DES ENTITY BEANS CONFIGURATION DE L'EMPAQUETAGE POUR LE DÉPLOIEMENT DÉPLOIEMENT DE L'APPLICATION, TESTS ET DÉBOGUAGE RELATIONS DE DÉPENDANCE CONCLUSION 5 2. IMPLÉMENTATION DES SESSION BEANS INSERTPERSONBEAN INSERTATHLETEBEAN SEARCHACTIVITIESFORPERSONFROMTO TENTATIVE D'IMPLÉMENTATION D'UN DELETEPERSONBEAN 8 ARCHITECTURE 9 DIAGRAMME DE CLASSE 1 (ENTITY BEANS) 9 9 CONCLUSION 10 RÉFÉRENCES 10 2

3 Introduction Dans le cadre du cours Advanced Software Engineering, le projet MiniCyberCoach permet de se familiariser avec la technologie J2EE et les Entreprise Java Beans. Le but poursuivi fut l'implémentation de trois use cases du projet MiniCyberCoach. Il a fallu, pour ce faire, installer un environnement de développement J2EE complet (Jboss, MySQL, Eclipse y compris Ant et XDoclet et PhpMyAdmin). La deuxième étape fut naturellement la création d'un projet Eclipse et la configuration (Ant, XDoclet) de ce dernier. Après quoi, l'écriture des beans à proprement parler a pu commencer. Nous avons tout d'abord implémenté les cinq entity beans figurant dans le modèle objet du projet. Nous avons procédé en écrivant uniquement la classe du bean et en insérant dans les commentaires JavaDoc les balises XDoclet nécessaires à la génération des quatre interfaces du bean et du descripteur de déploiement. L'insertion des bonnes informations dans ledit descripteur a permis la création automatique des tables correspondantes dans la base de données (BD) du serveur d'application. Ensuite, nous avons procédé à l'implémentation des use cases suivants : InsertPerson, InsertAthlete, SearchActivitiesforPersonFromTo. Là, à nouveau, nous avons fait usage des balises XDoclet non seulement pour la génération du descripteur de déploiement et des interfaces mais également pour l'écriture de méthodes de recherche personnalisées (du type : findby ou ejbselect ). Finalement, nous avons implémenté une servlet test pour chaque use case développé afin de contrôler le bon fonctionnement de l'ensemble du projet. Cette dernière étape de déboguage fut la plus coûteuse en temps, mais quand même plus importante que les phases d'apprentissage des outils de développement. En effet, si nous restons persuadés d'avoir un bon investissement, la maîtrise de Eclipse et XDoclet notamment a exigé de nous d'importants efforts. 3

4 Tâches réalisées 1. Implémentation des entity beans (génération de la BD incluse) Catherine Pugin Pierre-Olivier Volet L'implémentation des entity beans, y compris génération automatique de la base de données du projet, a permis de soulever un certain nombre de questions et de les résoudre définitivement. Parmi ces questions, la plus importante fut celle des commentaires XDoclet nécessaires à insérer dans les classes des composants, afin d'obtenir les descripteurs de déploiement souhaités (ce notamment en vue de la génération de la base de données). Cinq entity beans sont implémentés dans ce projet : - PersonEntityBean, - AthleteEntityBean, - LoginIDEntityBean, - ActivityEntityBean, - DisciplineEntityBean. Chacun sera lié à une table propre dans la BD. Lors du déploiement, cinq tables seront insérées : - Person, - Athlete, - LoginID, - Activity, - Discipline. 1.1 Ecriture des classes des composants La première étape de l'implémentation des entity beans fut l'écriture des classes des composants. En effet, nous avons choisi de générer les interfaces automatiquement, à l'instar des descripteurs de déploiement, en utilisant XDoclet. C'est la raison pour laquelle la première étape de l'implémentation des entity beans ne fut pas l'écriture des interfaces distantes. Chaque composant, outre les méthodes imposées par les spécifications J2EE, contient deux méthodes pour chaque champ spécifié dans la BD du projet, l'un de type setfield et l'autre de type getfield. L'outil Eclipse générant automatiquement les lignes de code imposées pour la création d'un composant métier, l'écriture des cinq entity beans du projet s'est donc résumée aux méthodes susmentionnées. 1.2 Insertion des balises XDoclet dans les classes des composants La deuxième étape de l'implémentation des entity beans fut l'insertion dans les classes des composants des balises XDoclet nécessaires à la génération des interfaces, d'une part, et des descripteurs de déploiement, d'autre part. Ces balises sont à introduire dans les espaces JavaDoc du code. Ce fut la plus grosse partie du travail d'implémentation des entity beans et la plus délicate. Il était en effet impératif qu'il ne subsiste aucune erreur, puisque ces balises allaient non seulement générer les interfaces et les descripteurs de déploiements, mais également, indirectement et grâce aux descripteurs de déploiements complets et corrects, la BD (ou plutôt les tables correspondantes dans la BD). Si nous avons passé beaucoup de temps à entrer dans la syntaxe et la sémantique de XDoclet, il ne nous semble pas en avoir gaspillé. Car il est peu probable, premièrement, que l'écriture a mano de la classe du composant, des quatre interfaces et des descripteurs de déploiement complets et corrects nous eût coûté moins de temps. Deuxièmement, il ne faut pas sous-estimer le pouvoir de XDoclet. Cet outil permet à celui qui le connaît bien d'implémenter en vingt minutes un composant y compris ses interfaces, ses descripteurs de déploiement et, si besoin est, d'automatiser la génération de la table correspondante dans la BD. 1.3 Implémentation d'une Servlet test des entity beans La troisième étape de l'implémentation des entity beans fut l'implémentation d'une servlet destinée à tester le comportement correct des entity beans sur le serveur. Le comportement de cette servlet se borne à insérer une nouvelle personne dans la BD puis à en afficher les caractéristiques depuis la BD. 4

5 Ici encore, si l'on peut croire à une perte de temps, s'en fut en réalité un gain. Premièrement, il vaut toujours mieux tester les éléments indépendamment, de façon à cerner au plus vite les erreurs. Deuxièmement, le squelette de la servlet a pu être réutilisé pour tous les tests que nous avons effectué sur l'application Mini CyberCoach par la suite. 1.4 Configuration de l'empaquetage pour le déploiement La quatrième étape de l'implémentation des entity beans fut la définition, par l'intermédiaire des facilités fournies pour Eclipse, des options d'empaquetage Ant. A cette étape également, beaucoup de temps utilisé à entrer dans la sémantique Ant, mais pas perdu. En effet, le gain de temps fut considérable par la suite, car une fois les options Ant spécifiées, il est possible d'empaqueter le projet à chaque nouveau changement en quelques secondes. Nous avons spécifié la génération de quatre packages différents. Premièrement un package MiniCyberCoachEJB.jar, contenant les composants compilés, deuxièmement un package MiniCyberCoachEJB-client, contenant les interfaces, troisièmement un package MiniCyberCoachWeb.war, contenant la servlet. Nous avons finalement regroupé ces packages en une application J2EE individuelle empaquetée dans MiniCyberCoachApp.ear. Il a en outre fallu écrire le descripteur d'application application.xml. 1.5 Déploiement de l'application, tests et déboguage La cinquième étape de l'implémentation des entity beans fut finalement le déploiement de l'application sur le serveur, la réalisation des tests usuels (à l'aide de la servlet test) et le déboguage de l'application, ce qui englobe aussi bien des erreurs dans le code Java que dans les balises XDoclet. Cette étape fut longue et pénible et, cette fois, nous avons bel et bien perdu du temps. Il a en effet fallu plusieurs heures à la correction d'erreurs simples en raison du comportement parfois curieux d'eclipse. Nous illustrons notre propos par un exemple. JBoss nous a signalé en premier lieu une erreur dans la servlet test à la localisation du composant PersonEntity. Erreur il y avait bien, mais qui fut promptement corrigée. S'en suivit le rituel d'empaquetage et de déploiement et, au second test, surprise : l'erreur n'avait pas disparu. Plusieurs heures de recherche, correction, empaquetage, déploiement suivirent cet incident. Jusqu'au moment où M. Evéquoz suggère d'effacer entièrement la ligne problématique. À l'appel de la Servlet, effarement : l'erreur n'avait toujours pas disparu. C'est donc à cet instant que nous avons envisagé la possibilité d'une faiblesse de notre outil développement. Nous avons eu raison. Le problème semble s'être résolu de lui-même le lendemain (sans doute grâce au redémarrage de la machine). Cette anecdote veut signifier la difficulté rencontrée parfois à travailler avec cet environnement de développement. Elle veut aussi donner un élément de justification du prix d'outils de développement professionnels tels que Websphere d'ibm. Ces outils coûtent cher parce qu'ils sont complexes et délicats, et que la garantie de leur bon fonctionnement est onéreuse. 1.6 Relations de dépendance Les relations de dépendance entre les tables sont spécifiées dans le descripteur de déploiement à l'aide de balises XDoclet. Elles permettent, lors du déploiement des tables dans la BD, de générer les clés étrangères nécessaires. 1.7 Conclusion À la fin de cette phase de développement, les entity beans PersonEntity, LoginEntity, AthleteEntity, ActivityEntity et DisciplineEntity sont fonctionnels. Grâce aux spécifications XDoclet, les classes correspondantes sont générées, c'est-à-dire pour chaque entity bean, les interfaces home, remote, local et localhome. De plus, le descripteur de déploiement contient toutes les informations nécessaires à leur fonctionnement correct, dont notamment : - références JNDI des interfaces associées, - persistance (Container managed persistence - CMP), - lien avec la base de données (utilisés aussi pour la génération de ladite BD), - relations de dépendance entre entity beans (cf. diagramme de classes). 2. Implémentation des session beans Nous avons adopté grosso modo la même méthode de travail que pour les entity beans. Nous avons donc commencé par l'écriture des classes des beans, puis nous avons inséré dans les espaces JavaDoc les balises XDoclet requises pour la génération des interfaces, du descripteur de déploiement. 5

6 Les mêmes remarques faites à ce sujet dans les lignes consacrées aux entity beans sont valables pour les session beans. Entrer dans la syntaxe et la sémantique XDoclet est un exercice ardu mais au rendement élevé. 2.1 InsertPersonBean Pierre-Olivier Volet Florian Evéquoz Catherine Pugin Les spécifications du bean sont les suivantes : étant donné toutes les informations relatives à une personne, dont son username et son password, insérer les relations correspondantes dans les tables Person et LoginID de la BD. Il s'agit donc d'une transaction puisqu'il faut éviter absolument que, par exemple, la relation correspondante soit insérée dans la table Person sans que la relation correspondant ne soit insérée dans la table LoginID. Nous avons choisi de régler ce problème en spécifiant les informations relatives à cette transaction dans le descripteur de déploiement. Le modèle de transaction requis est de type required. Le bean offre la méthode suivante : public void InsertNewPerson( String FirstName, String LastName, char Gender, String Address, String TelephoneNumber, String Address, int DayOfBirth, int MonthOfBirth, int YearOfBirth, String Username, String Password) throws EJBException Cette méthode se comporte de la manière suivante : 1. Localisation des entity beans concernés, PersonEntity et LoginIDEntity 2. Détermination de la clé primaire de la relation à insérer dans Person et de la clé primaire de la relation à insérer dans LoginID. Dans ce dessein, la méthode utilise la méthode findbyprimarykey fournit par défaut par les entity beans. Elle s'en sert pour parcourir les relations enregistrées dans les tables afin de déterminer quelle est le nombre de la clé primaire de la relation insérée en dernier. Une fois ce chiffre connu, il suffit de lui additionner 1 pour obtenir la clé primaire de la prochaine relation à insérer. 3. Insertion des informations dans la BD à l'aide des méthodes de type setfield des entity beans. La méthode une lance une exception de type EJBException en cas de problème, notamment si les informations n'ont pas pu être insérées correctement. 2.2 InsertAthleteBean Pierre-Olivier Volet Florian Evéquoz Catherine Pugin Les spécifications du bean sont les suivantes : étant donné toutes les informations relatives à un athlète, insérer la relation correspondante dans la table Athlete. Puis, mettre à jour l'athlète actuel de la personne correspondante en remplaçant la clé étrangère CurrentAthlete de la personne par l'identificateur de ce nouvel athlète. Par la même occasion, il faut mettre à jour le champ ValidTo de l'ancien athlète en lui donnant la valeur du ValidFrom du nouvel athlète qu'on insère. Nous avons choisi de régler ce problème en spécifiant les informations relatives à cette transaction dans le descripteur de déploiement. Le modèle de transaction requis est de type required. Le bean offre la méthode suivante : 6

7 public void InsertNewAthlete( int ValidFrom, int Weight, int Height, int OwnZoneMin, int OwnZoneMax, Boolean Injury, int PersonId) throws EJBException Déroulement de la méthode : 1. Localisation des entity beans concernés, PersonEntity et AthleteEntity. 2. Détermination de l'athlète courant en regardant le champ CurrentAthlete de la personne concernée. 3. Grâce à cette clé, on localise l'athlète courant et on insère la valeur ValidFrom dans le champ ValidTo. 4. Ensuite on crée un nouvel athlète entity bean et on insère les valeurs requises dans la BD grâce aux setfields. Comme précédemment la méthode lance une exception du type EJBException si une erreur s'est produite durant son exécution. 2.3 SearchActivitiesForPersonFromTo Florian Evéquoz Pierre-Olivier Volet Les spécifications du bean sont les suivantes : étant donnés l'identificateur d'une personne et deux dates limites cohérentes la première date est inférieure à la seconde retourner toutes les activités des athlètes correspondants à la personne durant la période donnée. Pour ce faire, nous récupérons la date courante de la machine dans un objet Calendar pour vérifier la cohérence des dates entrées. Le bean ne traitera ainsi pas des dates qui sont "à venir". Le résultat est retourné dans un vecteur où seront listées toutes les activités. De plus, pour ce bean, nous avons dû définir deux nouvelles méthodes de recherche EJB-QL : - findathletesbypersonid(personid), - findactivitiesbyathleteid(athleteid). Ces deux méthodes permettent de simplifier les recherches dans la BD en évitant de devoir traiter chaque recherche avec les méthodes uniques, propres à chaque entity bean findbyprimarykey(pk). Celles-là sont définies dans le descripteur de déploiement par une requête SQL de type SELECT OBJECT(o) FROM table AS 0 WHERE a.fieldid =?1. Le bean offre la méthode suivante : public Vector dosearchactivitiesforpersonfromto( int PersonID, int From, int To) throws EJBException Déroulement de la méthode : 1. Localisation des entity beans concernés, ActivityEntity et AthleteEntity. 2. Parcours de la liste des athlètes et insertion dans un vecteur des athlètes correspondants à la personne en question. 3. Pour chaque athlète, on parcourt la liste des activités et on place dans un nouveau vecteur celles le concernant. On obtient ainsi deux vecteurs, l'un dans l'autre, structure que l'on retourne en réponse. Ici aussi, la méthode renvoie une exception de type EJBException en cas de problème lors de l'exécution, par exemple s'il n'y a aucune activité associée aux athlètes de la personne. 7

8 2.4 Tentative d'implémentation d'un DeletePersonBean Catherine Pugin Nous avons commencé l'écriture d'un session bean DeletePersonBean. Cette tentative avorta cependant, car la tâche se révéla, compte tenu de la forme générale du projet, bien plus importante que planifiée. L'idée de départ était d'utiliser les définitions de relations entre les entity beans (plus précisément la balise <cascade-delete />). Ceci permet de signifier au serveur d'application, lorsqu'une relation est supprimée, quelles sont les relations qui lui sont associées et qu'il faut également supprimer. De cette manière, un seul appel de la méthode remove() sur le bean à supprimer suffit à supprimer non seulement le bean en question mais aussi, par effet de cascade, tous les beans associés. Cela ne fonctionne évidemment qu'à condition que les relations soient correctement spécifiées d'une part, et que le modèle objet spécifie des relations bidirectionnelles entre tous les beans à prendre en compte dans l'effet de cascade, d'autre part. Or, si l'on observe les schémas des tables proposé dans la donnée du projet, ceci n'est pas le cas pour la relation entre les beans AthleteEntityBean et ActivityEntityBean. Implémenter un tel session bean exigerait donc plusieurs modifications dans les entity beans concernés afin que la relation entre eux devienne bidirectionnelle. Faute de temps, nous n'avons pas pu entreprendre ce travail. Ainsi, notre DeletePersonBean n'efface que les beans PersonEntity et LoginIDEntity concernés (reliés entre eux par une relation bidirectionnelle) mais pas les beans AthleteEntity et ActivityEntity. 8

9 Architecture Diagramme de classe 1 (entity beans) Fig. 1. Diagramme de classe. 9

10 Conclusion Au terme de ce travail, nous pouvons dégager plusieurs réflexions. Premièrement, une remarque quant au temps consacré à la réalisation du projet. Il nous a fallu, en effet beaucoup plus de temps que prévu pour réaliser ce projet. Ce dépassement vient, entre autres, de la complexité des outils de développement utilisés ainsi que de leur relative instabilité. Il convient à ce sujet de souligner notamment la forte propension au crash dont Eclipse a fait preuve durant le développement du projet. Une autre raison à cette multiplication du temps de travail est la complexité de l'écriture (y compris l'insertion des balises XDoclet correctes) ainsi que du déboguage d'un bean. Ce sont des entités extrêmement complexes dont le bon fonctionnement dépend d'un très grand nombre de paramètres. L'aisance dans la programmation des EJB relève de l'acquisition d'une somme importante de connaissances. Nous considérons comme un symptôme révélateur de la complexité de la tâche le fait que, bien qu'ayant travaillé à trois sur un petit projet, nous n'avons pu éviter la spécialisation de chacun. Il est en effet très vite apparu que le moyen le plus efficace de progresser dans notre travail était de répartir les diverses étapes de la création d'un EJB entre nous trois, selon nos connaissances et notre (mince) expérience dans le domaine. Cela étant, il convient de souligner que nous avons toujours travaillé en groupe, mais que le leader de l'opération changeait en fonction du type de cette opération. Ainsi, la personne qui a le mieux compris la structure des entity beans a "dirigé" l'écriture de ceux-ci, tandis que celle qui avait le mieux saisi les difficultés de la syntaxe XDoclet a supervisé l'insertion de celle-ci, etc. Malgré ces quelques ombres, il faut souligner que ce projet constitue un excellent, voire indispensable, complément au cours. Il permet, en effet, de saisir par l'exemple la nature des questions abordée d'un point de vue théorique, et ce faisant, de parvenir à une compréhension globale satisfaisante du sujet. Le projet MiniCyberCoach nous a également permis de saisir toute la puissance technique et le potentiel commercial de la spécification J2EE et des EJB. Il nous a également permis de comprendre que ces technologies sont développées en vue d'applications extrêmement complexes et que ce n'est que dans cette perspective qu'elles constituent une solution rentable et d'un type actuellement irremplaçable. Références Livres [1] R. Monson-Haefel, Enterprise Java Beans, 3rd Edition, O'Reilly, sept Sites Internet [2] bon tutorial sur les EJB avec XDoclet. [3] xdoclet.sourceforge.net site officiel de XDoclet. 10

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

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

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

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

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

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

Refonte front-office / back-office - Architecture & Conception -

Refonte front-office / back-office - Architecture & Conception - Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table

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

La correction des erreurs d'enregistrement et de traitement comptables

La correction des erreurs d'enregistrement et de traitement comptables La correction des erreurs d'enregistrement et de traitement comptables Après l'étude des différents types d'erreurs en comptabilité (Section 1) nous étudierons la cause des erreurs (Section 2) et les techniques

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Création d'un site dynamique en PHP avec Dreamweaver et MySQL Création d'un site dynamique en PHP avec Dreamweaver et MySQL 1. Création et configuration du site 1.1. Configuration de Dreamweaver Avant de commencer, il est nécessaire de connaître l'emplacement du

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

Chapitre 2. Classes et objets

Chapitre 2. Classes et objets Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Architecture d'entreprise : Guide Pratique de l'architecture Logique Guides Pratiques Objecteering Architecture d'entreprise : Guide Pratique de l'architecture Logique Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam

Plus en détail

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

Chapitre 1 I:\ Soyez courageux!

Chapitre 1 I:\ Soyez courageux! Chapitre 1 I:\ Soyez courageux! Pour ne rien vous cacher, le langage d'assembleur (souvent désigné sous le terme "Assembleur", bien que ce soit un abus de langage, puisque "Assembleur" désigne le logiciel

Plus en détail

Serveur de travail collaboratif Michaël Hoste -

Serveur de travail collaboratif Michaël Hoste - Serveur de travail collaboratif Michaël Hoste - Table des matières 1. Qu'est ce qu'un serveur de travail collaboratif?...2 2. Pourquoi ce projet?...2 3. Possibilités d'utilisation dans le cadre de l'université...3

Plus en détail

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30 Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité

Plus en détail

Le passage à l échelle de serveur J2EE : le cas des EJB

Le passage à l échelle de serveur J2EE : le cas des EJB Le passage à l échelle de serveur J2EE : le cas des EJB Sylvain Sicard, Noël De Palma, Daniel Hagimont CFSE 4 5-8 Avril 2005 LSR 1 Plan de la présentation 1. Architecture de serveur J2EE en grappe 2. Problématique

Plus en détail

Introduction à JDBC. Accès aux bases de données en Java

Introduction à JDBC. Accès aux bases de données en Java Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity

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

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques livre blanc DÉVELOPPEMENT INFONUAGIQUE MEILLEURES PRATIQUES ET APPLICATIONS DE SOUTIEN DÉVELOPPEMENT INFONUAGIQUE - MEILLEURES PRATIQUES 1 Les solutions infonuagiques sont de plus en plus présentes sur

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

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

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP Services HP Care Pack Données techniques Le service de réplication des données HP pour Continuous Access offre

Plus en détail

Architecture de la plateforme SBC

Architecture de la plateforme SBC Simple Business Connector Architecture de la plateforme SBC Titre Projet Description Architecture de la plateforme SBC Plateforme SBC Ce document reprend toutes les étapes de l'installation du serveur

Plus en détail

Exemples et tutoriels Version 7.5. Tutoriel de l'exemple Recrutement de personnel pour IBM Process Designer

Exemples et tutoriels Version 7.5. Tutoriel de l'exemple Recrutement de personnel pour IBM Process Designer Exemples et tutoriels Version 7.5 Tutoriel de l'exemple Recrutement de personnel pour IBM Process Designer ii Exemple Recrutement de personnel Les manuels PDF et le centre de documentation Les manuels

Plus en détail

Programmation Objet - Cours II

Programmation Objet - Cours II Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à

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

RMI le langage Java XII-1 JMF

RMI le langage Java XII-1 JMF Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine

Plus en détail

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T> Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances

Plus en détail

Application 1- VBA : Test de comportements d'investissements

Application 1- VBA : Test de comportements d'investissements Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

Polymorphisme, la classe Object, les package et la visibilité en Java... 1 Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....

Plus en détail

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server Suite à mon précédent article concernant MSDE, je me suis rendu compte à partir des commentaires que de nombreux utilisateurs avaient des problèmes

Plus en détail

Sql Server 2005 Reporting Services

Sql Server 2005 Reporting Services Sql Server 2005 Reporting Services Un grand merci à Mr F. B. pour sa franchise, son sens de la relation humaine et son humilité. Sql Server 2005 Reporting Services - 2 / 30 - Sommaire Sommaire...2 Introduction...3

Plus en détail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de

Plus en détail

1 JBoss Entreprise Middleware

1 JBoss Entreprise Middleware 1 JBoss Entreprise Middleware Les produits de la gamme JBoss Entreprise Middleware forment une suite de logiciels open source permettant de construire, déployer, intégrer, gérer et présenter des applications

Plus en détail

WINDOWS SERVER 2003 Maintenance d'active directory V1.0

WINDOWS SERVER 2003 Maintenance d'active directory V1.0 WINDOWS SERVER 2003 Maintenance d'active directory V1.0 (Tutoriel réalisé par REYNAUD Guillaume) Quick-Tutoriel.com @ 2008 Page 1 / 9 Sommaire du Tutoriel 1 Introduction... 3 2 Défragmenter la Base Active

Plus en détail

Raja Bases de données distribuées A Lire - Tutoriel

Raja Bases de données distribuées A Lire - Tutoriel Université des Sciences de Montpellier Master 2 Semestre 1 Unité d'enseignement FMIN306 Raja Bases de données distribuées A Lire - Tutoriel 26 janvier 2011 Audrey Novak Romain Maneschi Jonathan Fhal Aloys

Plus en détail

Les messages d erreur d'applidis Client

Les messages d erreur d'applidis Client Fiche technique AppliDis Les messages d erreur d'applidis Client Fiche IS00313 Version document : 1.00 Diffusion limitée : Systancia, membres du programme Partenaires AppliDis et clients ou prospects de

Plus en détail

TP1. Outils Java Eléments de correction

TP1. Outils Java Eléments de correction c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par

Plus en détail

TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique

TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique Bilan technique et éléments de développement Fonctionnalités attendues Une vingtaine d établissements

Plus en détail

Tutoriel - flux de facturation

Tutoriel - flux de facturation 1 of 12 17.01.2007 01:41 Tutoriel - flux de facturation Le schéma ci-dessous illustre le flux de facturation classique : Lors de la création d'une facture, elle possède l'état de brouillon, ce qui veut

Plus en détail

SECTION 5 BANQUE DE PROJETS

SECTION 5 BANQUE DE PROJETS SECTION 5 BANQUE DE PROJETS INF 4018 BANQUE DE PROJETS - 1 - Banque de projets PROJET 2.1 : APPLICATION LOGICIELLE... 3 PROJET 2.2 : SITE WEB SÉMANTIQUE AVEC XML... 5 PROJET 2.3 : E-LEARNING ET FORMATION

Plus en détail

Département Génie Informatique

Département Génie Informatique Département Génie Informatique BD51 : Business Intelligence & Data Warehouse Projet Rédacteur : Christian FISCHER Automne 2011 Sujet : Développer un système décisionnel pour la gestion des ventes par magasin

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

Sauvegarde des bases SQL Express

Sauvegarde des bases SQL Express Sauvegarde des bases SQL Express Sauvegarder les bases de données avec SQL Express Dans les différents articles concernant SQL Server 2005 Express Edition, une problématique revient régulièrement : Comment

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

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5 1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases

Plus en détail

Chapitre 10. Architectures des systèmes de gestion de bases de données

Chapitre 10. Architectures des systèmes de gestion de bases de données Chapitre 10 Architectures des systèmes de gestion de bases de données Introduction Les technologies des dernières années ont amené la notion d environnement distribué (dispersions des données). Pour reliér

Plus en détail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

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

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES BASE DE DONNEES La plupart des entreprises possèdent des bases de données informatiques contenant des informations essentielles à leur fonctionnement. Ces informations concernent ses clients, ses produits,

Plus en détail

Qu'est-ce que le BPM?

Qu'est-ce que le BPM? Qu'est-ce que le BPM? Le BPM (Business Process Management) n'est pas seulement une technologie mais, dans les grandes lignes, une discipline de gestion d'entreprise qui s'occupe des procédures contribuant

Plus en détail

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Télécom Nancy Année 2013-2014

Télécom Nancy Année 2013-2014 Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON

Plus en détail

Master Data Management en Open Source C est le Bon Moment

Master Data Management en Open Source C est le Bon Moment Master Data Management en Open Source C est le Bon Moment White Paper Sommaire Introduction... 2 Les Pré Requis du Marché Open Source... 2 La Liberté... 3 Prédire les Effets de l Open Source sur le MDM...

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Corrigé des exercices sur les références

Corrigé des exercices sur les références Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile

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

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL

Plus en détail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.

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

Mémo d'utilisation de BD Dico1.6

Mémo d'utilisation de BD Dico1.6 Mémo d'utilisation de BD Dico1.6 L'application BDDico a été développée par la Section Cadastre et Géomatique de la RCJU. Son utilisation demeure réservée aux personnes autorisées. Les demandes d'utilisation

Plus en détail

JOnAS 5. Serveur d application d

JOnAS 5. Serveur d application d JOnAS 5 Serveur d application d dynamique Agenda En quelques mots Caractéristiques essentielles Zoom sur le versioning 2 Bull, 2008 Serveur d application dynamique JOnAS - Serveur d application Open Source

Plus en détail

ITIL V3. Exploitation des services : Les fonctions

ITIL V3. Exploitation des services : Les fonctions ITIL V3 Exploitation des services : Les fonctions Création : juin 2013 Mise à jour : juin 2013 A propos A propos du document Ce document de référence sur le référentiel ITIL V3 a été réalisé en se basant

Plus en détail

JavaServer Pages (JSP)

JavaServer Pages (JSP) JavaServer Pages (JSP) XVIII-1 Prérequis pour ce cours Ce cours a trait à la programmation Java coté serveur Il faut connaître un minimum de technologie J2EE Il faut connaître les servlets XVIII-2 Motivation

Plus en détail

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA I. Introduction Suite à une demande des étudiants, il m'est apparu intéressant de montrer, à travers un exemple concret, comment

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

Titre: Version: Dernière modification: Auteur: Statut: Licence:

Titre: Version: Dernière modification: Auteur: Statut: Licence: Titre: Mise en œuvre de mod_webobjects Version: 2.0 Dernière modification: 2010/09/06 20:00 Auteur: Aurélien Minet Statut: version finale Licence: Creative Commons

Plus en détail

SITE WEB E-COMMERCE ET VENTE A DISTANCE

SITE WEB E-COMMERCE ET VENTE A DISTANCE Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme

Plus en détail

Mysql. Les requêtes préparées Prepared statements

Mysql. Les requêtes préparées Prepared statements Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Vérification intégrée de l'utilisateur Guide d'implémentation client 2015-05-04 Confidentiel Version 2.9

Vérification intégrée de l'utilisateur Guide d'implémentation client 2015-05-04 Confidentiel Version 2.9 Vérification intégrée de l'utilisateur Guide d'implémentation client 2015-05-04 Confidentiel Version 2.9 SOMMAIRE Introduction... 2 Objectif et public visé... 2 À propos de ce document... 2 Termes fréquemment

Plus en détail

1. Introduction...2. 2. Création d'une requête...2

1. Introduction...2. 2. Création d'une requête...2 1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12 Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures

Plus en détail

Tutoriel d installation de Hibernate avec Eclipse

Tutoriel d installation de Hibernate avec Eclipse Tutoriel d installation de Hibernate avec Eclipse Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création

Plus en détail

Chapitre 10. Les interfaces Comparable et Comparator 1

Chapitre 10. Les interfaces Comparable et Comparator 1 Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],

Plus en détail

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova I. Introduction Dans une période où la plasticité peut aider à réduire les coûts de développement de projets comme des applications mobile,

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

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

Composants Logiciels. Le modèle de composant de CORBA. Plan

Composants Logiciels. Le modèle de composant de CORBA. Plan Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA

Plus en détail

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes

Plus en détail

Création d'un questionnaire (sondage)

Création d'un questionnaire (sondage) Création d'un questionnaire (sondage) Le but de ce petit tuto est d'avoir les séquences pas à pas pour la création d'un questionnaire de façon à ne pas devoir rechercher la manière de procéder si l'outil

Plus en détail

Etude de cas : PGE JEE V2

Etude de cas : PGE JEE V2 Arrivés à ce point du tutoriel, nous savons créer une application Web implémentant la persistance des données. Toutefois, le modèle de cette application était simple et composé d'une unique classe et les

Plus en détail

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

Projet de Veille Technologique

Projet de Veille Technologique Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...

Plus en détail

Sage CRM. 7.2 Guide de Portail Client

Sage CRM. 7.2 Guide de Portail Client Sage CRM 7.2 Guide de Portail Client Copyright 2013 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,

Plus en détail

JOnAS Day 5.1. Outils de développements

JOnAS Day 5.1. Outils de développements JOnAS Day 5.1 Outils de développements Agenda Introduction Plugin Eclipse (JOPE) Plugin NetBeans (JOnbAS) Cargo 2 Bull, 2009 JOnAS Day 5.1 Objectifs - Réduire les temps de développement - Construction

Plus en détail

Projet ISN - dossier réalisé par Randrianarimanana Stéphanie. Titre du projet : Site de rencontre. le nom de notre site de rencontre : Linkymeet

Projet ISN - dossier réalisé par Randrianarimanana Stéphanie. Titre du projet : Site de rencontre. le nom de notre site de rencontre : Linkymeet Projet ISN - dossier réalisé par Randrianarimanana Stéphanie Titre du projet : Site de rencontre le nom de notre site de rencontre : Linkymeet ( tout astérisque* signifie voir annexe) l'équipe : Randrianariamanana

Plus en détail

Alfstore workflow framework Spécification technique

Alfstore workflow framework Spécification technique Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date

Plus en détail

Catalogue des Formations Techniques

Catalogue des Formations Techniques Catalogue des Formations Techniques Items Média Concept 4, allées Pierre-Gilles de Gennes - 33700 Mérignac Téléphone : 05.57.35.73.73 Télécopie : 05.57.35.73.70 Courriel : contact@imc-fr.com 2 Préambule

Plus en détail

MODE OPERATOIRE OPENOFFICE BASE

MODE OPERATOIRE OPENOFFICE BASE MODE OPERATOIRE OPENOFFICE BASE Openoffice Base est un SGBDR : Système de Gestion de Base de Données Relationnelle. L un des principaux atouts de ce logiciel est de pouvoir gérer de façon efficace et rapide

Plus en détail