Pondération : total 20 pts 20 pts 15 pts 15 pts 20 pts 10 pts 100 pts. Nom : Prénom : Signature : Matricule :
|
|
- Auguste Fortier
- il y a 8 ans
- Total affichages :
Transcription
1 Université de Sherbrooke, Département d informatique IFT287 : Exploitation de bases de données, Examen final Professeur : Marc Frappier, Mardi 19 avril 2005, 9h00 à 12h00 Documentation permise. La correction est, entre autres, basée sur le fait que chacune de vos réponses soit claire, c est-à-dire lisible et compréhensible pour le lecteur; précise, c est-à-dire exacte et sans erreur; concise, c est-à-dire qu il n y ait pas d élément superflu; complète, c est-àdire que tous les éléments requis sont présents. Pondération : total 20 pts 20 pts 15 pts 15 pts 20 pts 10 pts 100 pts Nom : Prénom : Signature : Matricule : 1) (20 pts) Donnez le digramme de classe UML permettant de modéliser avec une base de données objets le système décrit ci-après. Attention : ne donnez pas les gestionnaires de transaction, de collection et de connexion; donnez seulement les classes contenant des données persistantes; modélisez seulement les attributs mentionnés; modélisez tous les attributs apparaissant dans la description; respectez la structure imposée par la description. Le système doit gérer les comptes des clients d'une banque. Un client peut avoir plusieurs comptes; un client est identifié par un entier (noclient) ; il possède aussi un nom. Un compte est identifié par un entier (nocompte). Un compte peut être conjoint, c'est-à-dire qu'il peut appartenir à plusieurs personnes. Chaque compte peut contenir des opérations. Une opération ajoute ou soustrait un certain montant au solde du compte à une date et heure donnée. Si le compte possède une marge de crédit, son solde peut être négatif, sans toutefois dépasser cette marge de crédit. On désire connaître l'auteur de chaque opération. Un client peut faire des transferts entre ses comptes; un transfert est représenté par deux opérations : une qui soustrait au compte d'origine et l'autre qui ajoute au compte de destination. Les transferts doivent être modélisés comme des objets distincts des opérations. Finalement, si un client effectue un transfert d'un compte conjoint vers un compte personnel, le système doit aviser les autres personnes titulaires du compte. Ceux-ci doivent approuver le transfert pour qu'il soit effectif; le système doit conserver la date à laquelle l'approbation de chaque titulaire a été obtenue. 1/10
2 Espace réponse de la question 1) -propriétaires 0..* 0..* -comptes Client -noclient : int -nom : string -auteur * Compte -nocompte : int -margedecrédit : double -solde : double -compte 1 -approbateurs 0..* Approbation -date -approbations 0..* Transfert -notransfert : int -source -transfertssource -transfertdestination destination * -opérations Opération -montant : double -date : Date -nooperation : int 0..* -opérations 2/10
3 -lesa 0..* lec R3 TupleA -clea : int -lea 0..1 R1 -lesb 0..* TupleB -cleb : int -dateb : Date -lesb 0..* R2 -lec 1..1 TupleC -clec : int Figure 1 2) (20 pts) Considérez le diagramme de classe de la figure 1. a) (7 pts) Donnez les déclarations des classes persistantes correspondant à ce diagramme. Donnez seulement les attributs; ne donnez pas les méthodes pour l'instant. On désire que les TupleB associés à un TupleA par l'association R1 soient triés en ordre croissant de dateb. public class TupleA private int clea; private List lesb; private TupleC lec; public List getlesb() return lesb; public class TupleB private int cleb; private Date dateb; private TupleA lea; private TupleC lec; public TupleC getlec() return lec; public void affecterc(tuplec c) lec = c; public class TupleC public TupleC() private int clec; private List lesa; private List lesb; public void supprimerunb(tupleb b) lesb.remove(b); b) (5 pts) Codez le constructeur de la classe TupleA. public TupleA(int clea) this.clea = clea; this.lesb = new LinkedList(); this.lec = null; c) (8 pts) Codez avec FastObjects la transaction t1 qui effectue le traitement suivant. Elle reçoit en paramètre la valeur ka. Si un objet TupleA ta de clé ka existe, elle supprime, pour tous les objets TupleB tb reliés à ta par R1, les associations (tb, tc) de R2. Par exemple, dans la figure cidessous, t1(ka) supprime les associations (tb 1, tc 1 ) et (tb 2, tc 2 ), représentées ici par un trait pointillé. Pour simplifier le code, n'utilisez pas un gestionnaire de collection; accédez directement aux objets à partir de la méthode t1. ta.clea == ka ta Complétez le code ci-dessous. Ajoutez à la réponse de la question de la question 2)a) les méthodes nécessaires pour compléter cette question. R1 tb 1 R2 tb 2 tc 1 tc 2 3/10
4 public static void t1(persistencemanager pm, int ka) throws Exception pm.currenttransaction().begin(); try Extent alla = pm.getextent(tuplea.class, true); Iterator it = Extents.iterator(allA, "indexclea"); TupleA ta = null; if (Extents.findKey(it, new Integer(ka))) ta = (TupleA) it.next(); alla.close(it); Iterator itbdea = ta.getlesb().iterator(); while (itbdea.hasnext()) TupleB tb = (TupleB) itbdea.next(); TupleC tc = tb.getlec(); tc.supprimerunb(tb); tb.affecterc(null); pm.currenttransaction().commit(); catch (Exception e) if (pm.currenttransaction().isactive()) pm.currenttransaction().rollback(); throw e; 4/10
5 3) (15 pts) Complétez le JSP ci-dessous qui utilise un DOM pour produire la page HTML de la figure 2 (page suivante) à partir d'un fichier XML qui satisfaisait la DTD de la figure 2 (page suivante).... debut du JSP... <BODY <% DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setvalidating(true); factory.setignoringelementcontentwhitespace(true); factory.setignoringcomments(true); DocumentBuilder builder = factory.newdocumentbuilder(); Document document = builder.parse(new File("cours.xml")); Node n = document.getfirstchild(); while (n!= null && n.getnodetype()!= Node.ELEMENT_NODE) n = n.getnextsibling(); % <H1 Liste de cours de la session <%= n.getattributes().getnameditem("description").getnodevalue() % </H1 <% n = n.getfirstchild(); while (n!= null) String sigle = n.getattributes().getnameditem("sigle").getnodevalue(); Node etudiant = n.getfirstchild() % Sigle : <%= sigle % <ol <% while (etudiant!= null) String matricule = etudiant.getattributes().getnameditem("matricule"). getnodevalue(); String note = etudiant.getfirstchild().getfirstchild().getnodevalue(); etudiant = etudiant.getnextsibling(); % <li matricule <%= matricule % note <%= note % </li <% n = n.getnextsibling(); % </ol <% % </BODY 5/10
6 <?xml version='1.0' encoding='iso '? <!ELEMENT session (cours)* <!ATTLIST session description CDATA #REQUIRED <!ELEMENT cours (etudiant)* <!ATTLIST cours sigle CDATA #REQUIRED <!ELEMENT etudiant (note) <!ATTLIST etudiant matricule CDATA #REQUIRED <!ELEMENT note (#PCDATA) Figure 2 4) (15 pts) Utilisez un SAXParser pour calculer la moyenne des notes par cours et la moyenne des notes pour toute la session. Le fichier XML satisfait la DTD de la figure 2. Pour le fichier xml suivant <?xml version="1.0" encoding="iso " standalone="no"? <!DOCTYPE session SYSTEM "etudiant.dtd" <session description="h05" <cours sigle="ift187" <etudiant matricule=" " <note90</note </etudiant <etudiant matricule=" " <note80</note </etudiant </cours <cours sigle="ift287" <etudiant matricule=" " <note70</note </etudiant <etudiant matricule=" " <note60</note </etudiant <etudiant matricule=" " <note50</note </etudiant </cours </session le programme doit produire la sortie suivante. Moyenne cours ift187 = 85.0 Moyenne cours ift287 = 60.0 Moyenne session = 70.0 Vous ne codez que les parties suivantes : déclaration des variables globales; méthodes startelement, endelement, characters. Déclaration de variables globales private static int totalsession, nbnotessession, totalcours, nbnotescours; private static String sigle; private static StringBuffer note; 6/10
7 public void startelement(string n, String l, String qname, Attributes attrs) throws SAXException if (qname.equals("session")) totalsession = 0; nbnotessession = 0; else if (qname.equals("cours")) totalcours = 0; nbnotescours = 0; sigle = attrs.getvalue("sigle"); else if (qname.equals("note")) nbnotescours = nbnotescours + 1; note = new StringBuffer(); public void endelement(string n, String l, String qname) throws SAXException if (qname.equals("session")) System.out.println("Moyenne session = " + ((float) totalsession)/nbnotessession); else if (qname.equals("cours")) System.out.println("Moyenne cours " + sigle + " = " + ((float) totalcours)/nbnotescours); totalsession = totalsession + totalcours; nbnotessession = nbnotessession + nbnotescours; else if (qname.equals("note")) totalcours = totalcours + Integer.parseInt(note.toString()); public void characters(char buf[], int offset, int len) note.append(buf,offset,len); 7/10
8 5) (20 pts) Servlet a) (5 pts) Supposez que l'on désire conserver des statistiques sur l'utilisation d'une application. On désire afficher, lorsqu'un utilisateur se connecte, le nombre d'utilisateurs présentement connectés. En utilisant que les classes offertes par un serveur JSP (comme Tomcat), expliquez comment vous procédez pour gérer ce nombre d'utilisateurs. Soyez bref et précis. Au démarrage de l'application, lors de l'exécution du ServletContextListener, on ajoute un attribut nbutilisateurs dans le servletcontext.lors de la création de la session (getsession() == null), on incrémente de 1a valeur de ce compteur. Dans la méthode sessiondestroyed du HttpSessionListener, on décrémente ce compteur. b) (15 pts)voici un petit scénario pour le système décrit à la question 1). L'utilisateur se connecte avec un Login.jsp similaire à celui de biblioweb. Le système lui affiche ensuite la liste de ses comptes. L'utilisateur sélectionne alors un compte parmi cette liste. Le système lui affiche ensuite les transferts à approuver pour ce compte avec la page ListeTransfert.jsp. Voici cet écran et une partie du code source HTML qui est généré par cette page jsp. <FORM ACTION="Pgm" METHOD="POST" <table <tr <tdsélection</td <tddate</td <tdmontant</td </tr <tr <td<input TYPE="RADIO" NAME="noTransfert" VALUE="1"</td <td :12:12</td <td $</td </tr <tr <td<input TYPE="RADIO" NAME=" notransfert " VALUE="2"</td <td :23:41</td <td $</td </tr </table<br <INPUT TYPE="SUBMIT" NAME="approuver" VALUE="approuver"<BR </FORM Codez la méthode dopost qui approuve ce transfert. Posez les hypothèses appropriées afin de la coder. Pour approuver le transfert, il faut appeler la méthode static Banque.approuver qui s'occupe de tous les détails nécessaires pour faire l'approbation. Le serveur Tomcat ne doit pas 8/10
9 pouvoir appeler deux occurrences de cette méthode en même temps lors du traitement de requêtes par l'application web, même si les requêtes proviennent de deux utilisateurs différents. Si l'appel termine à approuver avec succès, on et ré-affiche la liste des transferts. Voici sa signature : public static void approuver(int noclient, String motdepasse, int nocompte, int notransfert) throws BanqueException Complétez le code de la méthode dopost ci-dessous public class Pgm extends HttpServlet public void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException if (request.getparameter("approuver")!= null) try int notransfert = 0; if (request.getparameter("notransfert") == null) throw new BanqueException("Aucun prêt sélectionné"); else notransfert = Integer.parseInt(request.getParameter("noTransfert")); int noclient = ((Integer) request.getsession().getattribute("noclient")).intvalue(); String motdepasse = ((String) request.getsession().getattribute("motdepasse")); int nocompte = ((Integer) request.getsession().getattribute("nocompte")).intvalue(); synchronized (getservletcontext()) Banque.approuver(noClient, motdepasse, nocompte, notransfert); RequestDispatcher dispatcher = request.getrequestdispatcher("/listetransfert.jsp"); dispatcher.forward(request, response); catch (BanqueException e) pas besoin de coder cette partie catch (Exception e) pas besoin de coder cette partie else pas besoin de coder cette partie // dopost //class 9/10
10 6) (10 pts) Complétez le DTD ci-dessous pour représenter les données du système décrit à la figure 1. Évitez la redondance; stockez une association à une seule place. <?xml version='1.0' encoding='iso '? <!ELEMENT q2 ( ) <!ELEMENT tuplea EMPTY clea CDATA #REQUIRED clec CDATA #IMPLIED <!ELEMENT tupleb EMPTY cleb CDATA #REQUIRED clec CDATA #REQUIRED clea CDATA #IMPLIED <!ELEMENT tuplec EMPTY clec CDATA #REQUIRED 10/10
Web Tier : déploiement de servlets
Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation
Plus en détailApplication 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étailJavaServer 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étailMaster d Informatique Corrigé du partiel novembre 2010
Universités d Aix-Marseille I & II Technologies XML Master d Informatique Corrigé du partiel novembre 2010 Année 2010-11 Documents autorisés Exercice 1 : Documents XML et Applications XML (4 points) Georges,
Plus en détailAspects techniques : guide d interfaçage SSO
COURDECO Aspects techniques : guide d interfaçage SSO Septembre 2011 Cette annexe présente succinctement le système d'authentification unique (SSO : single sign on, authentification unique) utilisé dans
Plus en détailUniversité de Sherbrooke, Département d informatique
Université de Sherbrooke, Département d informatique IGL501 : Méthodes formelles en génie logiciel, Examen périodique Professeur : Marc Frappier, mardi 7 octobre 2013, 15h30 à 18h20, local D4-2022 Documentation
Plus en détailDocumentation CAS à destination des éditeurs
Documentation CAS à destination des éditeurs Sommaire Préambule... 1 Présentation de CAS...2 Intérêt... 2 Fonctionnement de base...2 Synoptique des échanges (1ère connexion)... 2 Synoptique des échanges
Plus en détailTP 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étailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailCorrigé 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étailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailPackage Java.util Classe générique
Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object
Plus en détailProgrammer 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étailServeur d'archivage 2007 Installation et utilisation de la BD exist
Type du document Procédure d'installation Auteur(s) Eric Bouladier Date de création 26/02/20007 Domaine de diffusion tous Validé par Equipe Versions Date Auteur(s) Modifications V1.00 26/02/2007 Eric Bouladier
Plus en détailProgrammation des Applications Réparties. Parsers XML DOM et SAX
Programmation des Applications Réparties Parsers XML DOM et SAX Luiz Angelo Steffenel luiz-angelo.steffenel@univ-reims.fr Steffenel Programmation des Applications Réparties Master M1-2007-2008 1 Comment
Plus en détailXML et Java 2007. Vue Balisée en XML. Programmation avancée NFP 121. XML pourquoi faire? Structuration des données. Titre Auteur Section Paragraphe
Programmation avancée NFP 121 XML et Java 2007 XML pourquoi faire? Structuration des données Titre Auteur Section Paragraphe Paragraphe Paragraphe XML: Des BD aux Services Web Georges Gardarin 1. Introduction
Plus en détailTP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet
TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur
Plus en détailDéveloppement Logiciel
Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailA DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT
DOCUMENTATION CAS A DESTINATION DES SERVICES TIERS Titre descriptif du document Référence du document REFO-DT-ENTV2-ServeurCAS-v1.2.docx Nom du fichier REFO-DT-ENTV2-ServeurCAS-v1.2.docx Version du document
Plus en détailLe développement d applications Web
Le développement d applications Web Plan Principes des applications Web Origine et utilité des Servlets Présentation des Servlets Les JSP La Standard TAG Library Servlet, JSP et accès aux SGBD Les technologies
Plus en détailUn ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détail1. 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étailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailChapitre 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étailPour 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étailExploitation de bases de données relationnelles et orientées objet IFT287
Université de Sherbrooke Département d informatique Exploitation de bases de données relationnelles et orientées objet IFT287 Notes complémentaires et synthétiques Marc Frappier, Ph.D. professeur Avertissement
Plus en détailClasse ClInfoCGI. Fonctions membres principales. Gestion des erreurs
Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement
Plus en détailTutoriel 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étailGroupe Eyrolles, 2005, ISBN : 2-212-11406-0
Groupe Eyrolles, 2005, ISBN : 2-212-11406-0 10 L atelier MyEclipse Eclipse facilite considérablement le développement Java en équipe. Son puissant éditeur, associé à des fonctionnalités de complétion de
Plus en détailProgrammation avec des objets : Cours 7. Menu du jour
1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes
Plus en détailGestion distribuée (par sockets) de banque en Java
Gestion distribuée (par sockets) de banque en Java Université Paris Sud Rappel sur la solution locale de gestion simple de banque L objet de cet exercice était de créer une application java qui implante
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailPROJET 1 : BASE DE DONNÉES REPARTIES
PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties
Plus en détailExtension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.
Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence
Plus en détailProgrammation d application Bases de données avec Java
Plan du document Programmation d application Bases de données avec Java INT Problématique slide 3 Correspondance diagramme de classe slide 4 UML vers schéma relationnel Programmation BD avec JDBC slide
Plus en détailQuelques 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étailLes architectures 3-tiers Partie I : les applications WEB
Les architectures 3-tiers Partie I : les applications WEB 1 Evolutions logicielles Des objets aux composants... Objets JavaBeans, Objets ActiveX, Objets COM,... 1 Evolutions logicielles Des objets aux
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailProgrammation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13
Programmation Réseau Sécurité Java Jean-Baptiste.Yunes@univ-paris-diderot.fr UFR Informatique 2012-2013 Java Sécurité? différentes sécurités disponibles et contrôlables intégrité contrôle d accès signature/authentification/cryptographie
Plus en détailAPI04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture
API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant
Plus en détailProgrammation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
Plus en détail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailHTTP 1.1. HyperText Transfer Protocol ... ... TCP IP ...
HTTP 1.1 Place de http dans le modèle osi : HyperText Transfer Protocol...... TCP IP...... HTTP est un protocole «sans état» : chaque page WEB est transmise dans une connexion séparée (sauf pour les connections
Plus en détailJava 1.5 : principales nouveautés
Cours 6 - TEP - UPMC - 2008/2009 p. 1/34 Java 1.5 : principales nouveautés classes paramétrées : generics encapsulation des valeurs de types primitifs : auto[un]boxing itération sur les boucles types énumérés
Plus en détailLa 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étailTP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose.
Université Paris 7 M2 II Protocole Internet TP3 Mail Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose. 1 Protocole SMTP 1. Le protocole SMTP est définit dans
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailPrendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;
s Introduction Naissance d'un programme Exercice I-1 : Apprendre à décomposer une tâche en sous-tâches distinctes a. Objets nécessaires : 1 tableau, 1 clou, 2 pointes, 1 ficelle, 1 marteau, 1 crayon, 1
Plus en détailLOG4430 : Architecture logicielle et conception avancée
LOG4430 : Architecture logicielle et conception avancée Yann-Gaël Guéhéneuc Cours 3 Bibliothèques et chargement Dynamique de composants Département de génie informatique et de génie logiciel École Polytechnique
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailINTRODUCTION 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étailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Plus en détailTP 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étailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détailPour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant.
Chapitre 7 Le mode de communication en connexion est, a priori, supporté par le protocole TCP. Ce protocole fournit une communication fiable; les données sont transmises comme chaînes d octets. Avant de
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailIntroduction : les processus. Introduction : les threads. Plan
IN328 Programmation distribuée avec Java et J2EE 2 - Threads en Java Introduction : les processus Un processus est un ensemble d instructions à exécuter, un espace mémoire réservé et éventuellement d autres
Plus en détailDesign patterns. Design patterns - définition. Design patterns - avantages
Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern
Plus en détailModèle à composants. Daniel Hagimont. IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7. Remerciements
Modèle à composants Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://www.enseeiht.fr/~hagimont Remerciements Eric Bruneton Sacha
Plus en détailDéveloppement Web - Object Relational Mapping and Hibernate
1 / 58 Développement Web - Object Relational Mapping and Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer M1/M2 Informatique 2010-2011 2 / 58 Plan Plan 1 Introduction
Plus en détailFlux de données Lecture/Ecriture Fichiers
Flux de données Lecture/Ecriture Fichiers 1 Un flux de données est un objet qui représente une suite d octets d un programme pour une certaine destination ou issus d une source pour un programme flux d
Plus en détailTD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting
IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances
Plus en détailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailProgrammation Orientée Objet
Programmation Orientée Objet Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 21 octobre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet 21 octobre 2014
Plus en détailImplementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy)
Implementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy) Abstract Un problème se pose lorsque l on veut effectuer des appels RMI à travers un firewall, car
Plus en détailAvant-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étailLe développement d applications Web. François Charoy Pascal Molli Pascal Urso
Le développement d applications Web François Charoy Pascal Molli Pascal Urso License Creative Commons Cette création est mise à disposition selon le Contrat Paternité-Pas d'utilisation Commerciale-Partage
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailPROGRAMMATION PAR OBJETS
PROGRAMMATION PAR OBJETS Java Environnement et constructions spécifiques Walter Rudametkin Maître de Conférences Bureau F011 Walter.Rudametkin@polytech-lille.fr B. Carré Polytech Lille 2 Java (Sun 1995)
Plus en détailSynchro et Threads Java TM
Synchro et Threads Java TM NICOD JEAN-MARC Master 2 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2008 NICOD JEAN-MARC Synchro et Threads avec Java TM 1 / 32 Sommaire
Plus en détailRemote 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étailJacques Lonchamp. Conception. d applications en Java/JEE. Principes, patterns et architectures
Jacques Lonchamp Conception d applications en Java/JEE Principes, patterns et architectures Illustration de couverture : Abstract triangle mosaic background karandaev - Fotolia.com Dunod, 2014 5 rue Laromiguière,
Plus en détailCorrigés des premiers exercices sur les classes
Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.
Plus en détailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailConception 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étailINF2015 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étailInstitut 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étailProjet 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étailRMI. 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étailRafraichissement conditionné d'une page en.net
Rafraichissement conditionné d'une page en.net Test avec AJAX pour rafraichissement En utilisant AJAX, voici une possibilité de faire un rafraichissement conditionné. Nous verrons dans cet article une
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailGOL502 Industries de services
GOL502 Industries de services Conception d un service Partie IIb Version 2013 Introduction Conception d un service partie IIb Nous verrons dans ce chapitre Modélisation d un service; Langage de modélisation
Plus en détailIntroduction au langage Java
Introduction au langage Java 1 Introduction : Langage développé par Sun et purement orienté objet. N a pas de rapport direct avec Javascript développé par Netscape. Les applications java peuvent être des
Plus en détailCommunication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle
F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Communication inter-processus (IPC) : tubes & sockets exemples en C et en Java F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Java : implémentation
Plus en détailINITIATION AU LANGAGE JAVA
INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal
Plus en détailThreads. Threads. USTL http://www.lifl.fr/ routier 1
Threads USTL http://www.lifl.fr/ routier 1 Rappels - Définitions un Process est un programme qui tourne et dispose de ses propres ressources mémoire. OS multi-tâche plusieurs process en concurrence un
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailProgrammation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Plus en détailPage 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étailRMI 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étailCré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étailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détail