Programmation Web Avancée Parsers XML

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

Download "Programmation Web Avancée Parsers XML"

Transcription

1 1/33 Programmation Web Avancée Parsers XML Thierry Hamon Bureau H202 - Institut Galilée Tél. : Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F Bobigny cedex Tél. : , Fax. : thierry.hamon@univ-paris13.fr

2 2/33 Introduction Objectifs du XML fournir un cadre strict pour Stocker des données Echanger des données Besoin d outils pour l analyse (parsing) des documents XML (SAX, DOM, JAXP, JDOM, etc.) la validité et la conformité des documents XML produits (utilisent l analyse syntaxique du XML) la décomposition des documents en éléments/attributs/... le traitement (manipulation) des documents XML

3 3/33 Parseurs XML Deux principes d analyse du XML (avec les API correspondantesq) : SAX (Simple API for XML) : Interface évennementielle Manipulation d un document XML au fur et à mesure de la lecture Extraction des informations en fonction de la gestion des évènements liés aux balises rencontrées (création d un élément, etc.) DOM (Document Object Model) : Modèle objet Manipulation d un document XML après l avoir représenté en mémoire sous forme d un arbre d objets

4 4/33 Parseurs XML Autres API : JAXP (Java API for XML Parsing) - JavaSoft/Sun - Intégrer à Java depuis la version 1.4 Normalisation du parser et XML et uniformisation les paramètres standards (SAX et DOM) API standard pour les transformations de documents XML (processeurs XSLT, XSL-FO et XPATH) JDOM (Java + XML) Définition de classes JAVA pour manipuler des fichiers XML

5 5/33 Document Object Model (DOM) Représentation Objet en mémoire d un document XML ou HTML (4.0). Norme du consortium W3C ( Modèle générique d objets représentant un document Proposition d une interface de programmation pour les documents HTML ou XML DOM noyau (Core DOM) pour XML DOM HTML Représentation arborescente des objets correspondant au document chargé Manipulation de la structure logique et de l information à l aide de méthodes et d attributs API indépendantes des plates-formes, des langages de programmation et de script

6 6/33 API DOM (Java) API org.xml.dom Classes et méthodes permettant la manipulation d un document via l arbre DOM Manipulation des nœuds (ajout, suppression) et des attributs associés au nœd 3 étapes : 1 Analyse du document XML et représentation sous forme d une arborescence DOM 2 Manipulation et transformation de l arborescence initiale en une nouvelle arborescence DOM 3 Production d un nouveau document XML à partir de la nouvelle arborescence

7 7/33 Exemple import org. w3c. dom. ; import j a v a x. xml. p a r s e r s. ; import j a v a. i o. ; p u b l i c c l a s s domexample1 { public s t a t i c void main ( String [ ] args ) throws Exception { Document doc ; DocumentBuilderFactory dbf = DocumentBuilderFactory. newinstance ( ) ; dbf. s e t V a l i d a t i n g ( t r u e ) ; // v a l i d a t i o n des documents au c o u r s de l a n a l y s e DocumentBuilder db = dbf. newdocumentbuilder ( ) ; doc = db. p a r s e ( new F i l e ( a r g s [ 0 ] ) ) ; a f f i c h e r (, doc ) ;

8 8/33 Exemple p u b l i c s t a t i c v o i d a f f i c h e r ( S t r i n g i n d e n t, Node n ) { s w i t c h ( n. getnodetype ( ) ) { case org. w3c. dom. Node.COMMENT NODE: System. out. p r i n t l n ( i n d e n t + <! + n. getnodevalue ( ) + > ) ; break ; case org. w3c. dom. Node. TEXT NODE : System. out. p r i n t l n ( i n d e n t + ( ( C h a r a c t e r D a t a ) n ). getdata ( ) ) ; break ; case org. w3c. dom. Node. ELEMENT NODE : System. out. p r i n t l n ( i n d e n t + < + ( ( Element ) n ). gettagname ( ) + > ) ; break ; N o d e L i s t f i l s = n. g e t C h i l d N o d e s ( ) ; f o r ( i n t i =0; ( i < f i l s. g e t L e n g t h ( ) ) ; i ++) a f f i c h e r ( i n d e n t +, f i l s. item ( i ) ) ; i f ( n. getnodetype ( ) == org. w3c. dom. Node. ELEMENT NODE) System. out. p r i n t l n ( i n d e n t + </ + ( ( Element ) n ). gettagname ( ) + > ) ;

9 9/33 Interface Node Interface fondamentale : La plupart des objets sont considérés comme des nœuds Utilisation : Manipulation de nœuds (propriétés asssociées, navigation dans l arbre, etc. ) NB: Tout nœud est rattaché à un document mais pas forcément à l arborescence Interfaces : Node, NamedNodeMap, NodeList Interfaces héritant de Node : Attr, CharacterData (Comment, Text / CDATASection, Document, DocumentFragment, DocumentType, Element, Entity, EntityReference, Notation, ProcessingInstruction

10 10/33 Méthodes de l interface Node Propriétés d un nœud getnodetype() : retourne le type du noeud (ELEMENT NODE, ATTRIBUTE NODE, TEXT NODE,...) getnodename() : retourne le nom de l élément (Null si élément Text, sinon nom de la balise ou de l ttribut getnodevalue() : retourne la valeur du nœud (si Attribut, valeur de l attribut ; si élément, null getattributes() : retourne nodemap des attributs (seulement si élément)

11 11/33 Méthodes de l interface Node Navigation dans un nœud Possèdent des fils : Boolean haschildnodes() Récupération du premier fils : Node getfirstchild() Récupération du dernier fils : Node getlastchild() Récupération de tous les fils : NodeList getchildnodes() Récupération du père : Node getparentnode();

12 12/33 Méthodes de l interface Node Manipulation de nœuds Ajouter un nœud en tant que dernier fils : appenchild(node nouvel objet) Ajouter nœud : insertbefore(node nouvel objet,node objet fils) Retirer un nœud : removechild(node objet fils) Remplacer un nœud : replacechild(node nouvel objet,node objet fils) Cloner un nœud : CloneNode(boolean deep) deep == false : copie du nœud courant et des attributs si c est un élément deep == true : copie récursive

13 13/33 Interface Document Représentation de l ensemble du document comme un nœud Nœud document : racine du document mais pas l élément racine Interface de construction 1 Utilisation des méthodes de document pour créer des nœuds createelement(), createattribut(), createtextnode(),... 2 Association des nœuds au document 3 Ajouter ces nœuds à l arbre Accès au nœud Document : Elément Racine : Node getdocumentelement() Accès aux élément à partir du nom de la balise : NodeList getelemenstbytagname(string name)

14 14/33 Sauvegarde et transformation d un document? l API DOM (sauf niveau 3) ne fournit pas ces fonctionnalités Il faut utiliser JAXP (Java API for XML Parsing - javax.xml.*) qui utilise : un processeur XSL DOM

15 15/33 SAX Simple API for XML API org.xml.sax Normalisation proposée par des industriels (xml-dev) Standard de fait (1997) et supportée par la majeure partie des parsers XML Alternative à DOM pour éviter les problèmes de mémoire et la lecture de gros documents XML

16 16/33 SAX Simple API for XML Modèle événementiel Analyse à la volée par lecture du flux Implémentation d un ensemble de méthodes correspondant aux évènements du parser : Début/fin du document : startdocument(), enddocument(), characters() débutd/fin d un élément : startelement(), endelement() Adaptée aux documents volumineux Mais pas de conservation de l information

17 17/33 Interfaces de org.xml.sax : Interfaces de SAX 2 ContentHandler : gestion des évènements liés au contenu DTDHandler : gestion des évènements liés à la DTD ErrorHandler : gestion des erreurs Locator : gestion de la position XMLReader et XMLFilter : analyseur Attributes : gestion de la liste des attributs EntityResolver : gestion des entités externes Classes de org.xml.sax.helpers : org.xml.sax.helpers.defaulthandler implémente org.xml.sax.contenthandler org.xml.sax.dtdhandler org.xml.sax.entityresolver org.xml.sax.errorhandler

18 18/33 import j a v a x. xml. p a r s e r s. ; import org. xml. s a x. ; import j a v a. i o. F i l e ; Exemple 1 Utilisation de la classe DefaultHandler p u b l i c c l a s s saxexample1 extends org. xml. s a x. h e l p e r s. D e f a u l t H a n d l e r { public s t a t i c void main ( String args [ ] ) throws Exception { SAXParserFactory f a c t o r y = SAXParserFactory. n e w I n s t a n c e ( ) ; SAXParser s a x p a r s e r = f a c t o r y. newsaxparser ( ) ; s a x p a r s e r. p a r s e ( new F i l e ( a r g s [ 0 ] ), new saxexample1 ( ) ) ; p u b l i c v o i d startelement ( String uri, String name, String qname, A t t r i b u t e s a t t r s ) { f o r ( i n t i = 0 ; i < a t t r s. g e t L e n g t h ( ) ; i ++) { S t r i n g namea = a t t r s. getqname ( i ) ; S t r i n g typea = a t t r s. gettype ( i ) ; S t r i n g valuea = a t t r s. g e t V a l u e ( i ) ; System. out. p r i n t l n ( \ t + qname + / + namea + : ( + typea + ) + valuea ) ; p u b l i c v o i d startdocument ( ) { System. out. p r i n t l n ( S t a r t document ) ; p u b l i c v o i d enddocument ( ) { System. out. p r i n t l n ( End document ) ;

19 19/33 import org. xml. s a x. ; Exemple 2 Utilisation de la classe ContentHandler fichier saxexample3.java public c l a s s saxexample3 implements C o n t e n t H a n d l e r { p u b l i c v o i d setdocumentlocator ( L o c a t o r l o c a t o r ) { p u b l i c v o i d startdocument ( ) throws SAXException { System. out. p r i n t l n ( S t a r t document ) ; p u b l i c v o i d enddocument ( ) throws SAXException { System. out. p r i n t l n ( End document ) ; p u b l i c v o i d startprefixmapping ( String p r e f i x, String u r i ) throws SAXException { p u b l i c v o i d e n d P r e f i x M a p p i n g ( S t r i n g p r e f i x ) throws SAXException {

20 20/33 Exemple 2 Utilisation de la classe ContentHandler fichier saxexample3.java p u b l i c v o i d startelement ( String uri, String localname, S t r i n g qname, A t t r i b u t e s a t t r s ) throws SAXException { f o r ( i n t i = 0 ; i < a t t r s. g e t L e n g t h ( ) ; i ++) { S t r i n g namea = a t t r s. getqname ( i ) ; S t r i n g typea = a t t r s. gettype ( i ) ; S t r i n g valuea = a t t r s. g e t V a l u e ( i ) ; System. out. p r i n t l n ( \ t + localname + / + namea + : ( + typea + ) + valuea p u b l i c v o i d endelement ( String uri, String localname, S t r i n g qname) throws SAXException { p u b l i c v o i d c h a r a c t e r s ( char ch [ ], i n t s t a r t, i n t l e n g t h ) throws SAXException { public void i g n o r a b l e W h i t e s p a c e ( char ch [ ], i n t s t a r t, i n t l e n g t h ) throws SAXException {

21 21/33 Exemple 2 Utilisation de la classe ContentHandler fichier saxexample3.java p u b l i c v o i d p r o c e s s i n g I n s t r u c t i o n ( S t r i n g t a r g e t, S t r i n g data ) throws SAXException { p u b l i c v o i d s k i p p e d E n t i t y ( S t r i n g name ) throws SAXException {

22 22/33 Exemple 2 Utilisation de la classe ContentHandler fichier saxexamplemain.java import org. xml. s a x. ; public c l a s s saxexamplemain { p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { t r y { XMLReader p a r s e r = org. xml. s a x. h e l p e r s. XMLReaderFactory. createxmlreader ( ) ; ContentHandler contenthandler = new saxexample3 ( ) ; p a r s e r. s e t C o n t e n t H a n d l e r ( c o n t e n t H a n d l e r ) ; p a r s e r. p a r s e ( a r g s [ 0 ] ) ; catch ( E x c e p t i o n e ) { e. p r i n t S t a c k T r a c e ( ) ;

23 23/33 Gestion des erreurs Interface ErrorHandler Possibilité de personnalisation des messages d erreur : error(saxparseexception) fatalerror(saxparseexception) warning(saxparseexception) Association au parser : parser.seterrorhandler(errorhandler);

24 24/33 Gestion des évènements liés à la DTD Interface DTDHandler Notification de déclaration de notation void notationdecl(string name,string PublicId,String systemid) Adaptation du comportement au format du fichier Entité non analysé (Unparsed entity) void unparsedentity(string name,string PublicId,String systemid,string notationname)

25 25/33 Gestion des entités externes Interface EntityResolver Traitement particulier pour les entités externes Modification de la source à traiter Renvoie d un nouvel InputSource InputSource resolveentity(string publicid, String systemid)

26 26/33 DOM SAX DOM vs. SAX + Interface permettant la navigation dans tout l arbre + Manipulation de l arbre - Chargement de tout l arbre en mémoire - Représentation de tous les éléments - Traitement du document après l analyse + Traitement du document en cours d analyse + traitement des seuls les éléments pertinents - Ecriture de méthodes de traitements plus compliquées pour lesstructures imbriquées - Pas de conservation de l information

27 27/33 JAXP Java API for XML Parsing : ensemble d APIs Java permettant d effectuer des traitements XML inclut SAX (2.0) DOM (DOM Level 2) la manipulation de transformations XSLT Objectif : Proposer une couche d abstraction au dessus de SAX et DOM et standardiser les aspects non couvert par SAX et DOM

28 28/33 DOM : JAXP : Utilité de JAXP Pas de spécification sur la création de objet parser (API différentes, problème de portabilité ) Il faut il faut explicitement importer et référencer la classe de l analyseur (org.apache.xerces.parsers.domparser) Pas de standardisation par le W3C de l analyse du document XML et de la création de l objet associé Pas de norme sur l obtention d un document Couche intermédiaire entre le parser utilisé et l application Propose un parser XML minimal (non validant) supporte les espaces de noms

29 29/33 API JAXP Utilisation de plusieurs paquetages : javax.xml.parsers Ensemble de classes pour interfacer des parsers SAX : SAXParser et SAXParserFactory DOM : DocumentBuilder et DocumentBuilderFactory org.w3c.dom (DOM) org.xml.sax et org.xml.sax.helpers (SAX)

30 30/33 Exemple i m p o r t org. w3c. dom. ; i m p o r t j a v a x. xml. p a r s e r s. ; i m p o r t j a v a. i o. ; i m p o r t j a v a x. xml. t r a n s f o r m. stream. StreamSource ; i m p o r t j a v a x. xml. t r a n s f o r m. stream. S t r e a m R e s u l t ; i m p o r t j a v a x. xml. t r a n s f o r m. Source ; i m p o r t j a v a x. xml. t r a n s f o r m. R e s u l t ; i m p o r t j a v a x. xml. t r a n s f o r m. T r a n s f o r m e r ; i m p o r t j a v a x. xml. t r a n s f o r m. T r a n s f o r m e r F a c t o r y ; p u b l i c c l a s s jaxpexample { p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { T r a n s f o r m e r T r a n s f o = n u l l ; StreamSource FTransfo=new StreamSource ( new F i l e ( t r a n s f o. x s l ) ) ; TransformerFactory TR=TransformerFactory. newinstance ( ) ; t r y { Transfo=TR. newtransformer ( FTransfo ) ; c a t c h ( E x c e p t i o n t e ) { t e. p r i n t S t a c k T r a c e ( ) ; StreamSource s o u r c e=new StreamSource ( new F i l e ( a r g s [ 0 ] ) ) ; S t r e a m R e s u l t r e s u l t=new S t r e a m R e s u l t ( new F i l e ( r e s u l t. html ) ) ; t r y { T r a n s f o. t r a n s f o r m ( s o u r c e, r e s u l t ) ; c a t c h ( E x c e p t i o n t e ) { t e. p r i n t S t a c k T r a c e ( ) ;

31 31/33 Description de l API JAXP javax.xml.parsers : Définition de factory retournant des instances de parser pour traiter du XML avec SAX et DOM. javax.xml.transform : Définition de classes et d interfaces pour convertir un document XML en HTML, RTF,... javax.xml.transform.dom : Interfaces (Source et Result) pour DOM javax.xml.trasnform.sax : Interfaces (Source et Result) pour SAX javax.xml.transform.stream : Interfaces (Source et Result) pour représenter l information comme un flot de texte

32 32/33 Description de l API JAXP sauvegarde et transformation Classe TransformerFactory : création des méthodes de transformation de l arborescence XML newtransformer() : production d un nouveau transformer newtransformer(source XML) : production d un nouveau transformer avec possibilité d utiliser XSL Classe Transformer : application des transformations setparameter : spécification des paramètres à la transformations transform(source XmlSource, Result target) : transformation du document source vers le résultat Classe Source : Utilisation des StreamSource ou DOMSource Classe Result : Utilisation des StreamResult ou DOMResult

33 33/33 Autres API Autres langages de programmation JDOM : proposer une bibliothèque de classes simple pour la représentation et la manipulation de documents XML ( Faciliter l utilisation de DOM, permettre l enregistrement du résultat d une transformation dom4j : bibliothèque java compatible SAX, DOM et JAXP Perl : XML::DOM, XML::SAX XML::XSLT XMl::Simple : module Perl chargeant en mémoire un document XML (dans le style DOM) sous forme de structure Perl PHP :

Programmation des Applications Réparties. Parsers XML DOM et SAX

Programmation 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étail

<http://cahiers.gutenberg.eu.org/fitem?id=cg_1999 33-34_155_0>

<http://cahiers.gutenberg.eu.org/fitem?id=cg_1999 33-34_155_0> Cahiers GUTenberg GUT LE DOCUMENT OBJECT MODEL (DOM) François Role, Philippe Verdret Cahiers GUTenberg, no 33-34 (1999), p. 155-171. Association

Plus en détail

34. DOM (Document Object Model)

34. DOM (Document Object Model) 34. DOM (Document Object Model) 34.1. DOM DOM est l'acronyme de Document Object Model. C'est une spécification du W3C pour proposer une API qui permet de modéliser, de parcourir et de manipuler un document

Plus en détail

XML et Java 2007. Vue Balisée en XML. Programmation avancée NFP 121. XML pourquoi faire? Structuration des données. Titre Auteur Section Paragraphe

XML 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étail

Master d Informatique Corrigé du partiel novembre 2010

Master 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étail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition) Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du

Plus en détail

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch Faculté de Génie Chaire industrielle en infrastructures de communication La technologie XML Wajdi Elleuch Octobre 2004 SOMMAIRE Content : - XML : Définition - XML : Solution pour des applications réparties

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition XML par la pratique Bases indispensables Concepts et cas pratiques 3 ième édition Nouvelle édition Thierry BOULANGER Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante

Plus en détail

Programmation Web Avancée Introduction aux services Web

Programmation Web Avancée Introduction aux services Web 1/21 Programmation Web Avancée Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017

Plus en détail

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv> Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee

Plus en détail

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML XML : Extensible Markup Language SGML Une introduction (1) http://kiwi.emse.fr/3a/dn.html Ph. Jaillon / J.J. Girardot J.J. GIRARDOT - EMSE 10/2004 1 Standard Generalized Markup Language Norme ISO-8879

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

L'API DOM : Document Object Model

L'API DOM : Document Object Model Ingénierie Documentaire L'API DOM : Document Object Model http://doc.crzt.fr STÉPHANE CROZAT 16 octobre 2014 Table des matières I - Introduction au DOM 5 A. Principes du DOM...5 B. L'interface DOM...6

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT FileMaker Server 11 Publication Web personnalisée avec XML et XSLT 2007-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker est une

Plus en détail

Serveur d'archivage 2007 Installation et utilisation de la BD exist

Serveur 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étail

Architecture Orientée Service, JSON et API REST

Architecture 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é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

Évaluation et implémentation des langages

Évaluation et implémentation des langages Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation

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

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure 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étail

Introduction aux concepts d ez Publish

Introduction aux concepts d ez Publish Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de

Plus en détail

BASE DE DONNÉES XML NATIVE

BASE DE DONNÉES XML NATIVE BASE DE DONNÉES XML NATIVE NXDB - exist - XQuery IvMad, 2011-2012 2 1. exist exist-db Open Source Native XML Database Ce cours s inspire, reprend, modifie et enrichi des supports disponibles sur Internet

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

Document Object Model (DOM)

Document Object Model (DOM) Document Object Model (DOM) Jean-Claude Charr Maître de conférences IUT de Belfort Montbéliard Université de Franche Comté Description générale Définit un standard pour accéder aux documents structurés

Plus en détail

Cours 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. 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étail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à 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étail

Publication et Traitement avec XSL. 1. XPATH 2. XSLT 3. XSLFO 4. Traitement de documents 5. Conclusion

Publication et Traitement avec XSL. 1. XPATH 2. XSLT 3. XSLFO 4. Traitement de documents 5. Conclusion Publication et Traitement avec XSL 1. XPATH 2. XSLT 3. XSLFO 4. Traitement de documents 5. Conclusion 1. XPath : l'adressage XML XPath Expressions de chemins dans un arbre XML Permet de sélectionner des

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

DOM - Document Object Model

DOM - Document Object Model DOM - Document Object Model 1 But de DOM Interfacer les langages de programmation avec les documents XML en les associant avec un modèle orienté objet DOM permet aux programmes et scripts : d'accéder et

Plus en détail

SQL Parser XML Xquery : Approche de détection des injections SQL

SQL Parser XML Xquery : Approche de détection des injections SQL SQL Parser XML Xquery : Approche de détection des injections SQL Ramahefy T.R. 1, Rakotomiraho S. 2, Rabeherimanana L. 3 Laboratoire de Recherche Systèmes Embarqués, Instrumentation et Modélisation des

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche 1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de

Plus en détail

Evolution d Applications. Une Approche pour l Evolution des Systèmes Logiciels. Exemple : Le Serveur WWW. Applications Considérées

Evolution d Applications. Une Approche pour l Evolution des Systèmes Logiciels. Exemple : Le Serveur WWW. Applications Considérées Evolution d Applications Une Approche pour l Evolution des Manuel Oriol Présentation de doctorat 20 Avril 2004 Une application est souvent modifiée entre sa première mise en service et sa dernière. Une

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers 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étail

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Pré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étail

Bases de Données Avancées

Bases de Données Avancées 1/26 Bases de Données Avancées DataWareHouse Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin,

Plus en détail

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML Faculté Polytechnique de Mons Johnny TSHEKE SHELE Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML Travail de fin d études présenté en vue de l obtention du grade

Plus en détail

Bases de Données Avancées

Bases de Données Avancées 1/62 Bases de Données Avancées Introduction & Rappel Conception et Modélisation Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR

Plus en détail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage 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étail

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht. Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques

Plus en détail

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework

Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan

Plus en détail

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend

Plus en détail

as Architecture des Systèmes d Information

as 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étail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi

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

Meta Object Facility. Plan

Meta Object Facility. Plan Meta Object Facility Gestion de «meta objets» & meta meta modélisation Xavier Le Pallec Plan 1 Auteur : MOF : généralités L OMG en 1997-1998. Acteur principal DSTC : Centre Recherche sur les Systèmes distribués

Plus en détail

Gestion documentaire (Extraits du CCI version 1.2)

Gestion documentaire (Extraits du CCI version 1.2) Standard du gouvernement du Québec sur les ressources informationnelles PROJET Gestion documentaire (Extraits du CCI version 1.2) 12 juillet 2004 SGQRI 000[-00] Nom du [ : Nom de la partie] Projet, version

Plus en détail

Générer du code à partir d une description de haut niveau

Générer du code à partir d une description de haut niveau Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

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

Programmation par composants (1/3) Programmation par composants (2/3)

Programmation par composants (1/3) Programmation par composants (2/3) Programmation par composants (1/3) La programmation par composant vise le développement de logiciel par aggrégation de briques logicielles existantes est indépendante de la POO La programmation par composant

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

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr Module BDWEB Maîtrise d informatique Cours 9 - Xquery Anne Doucet anne.doucet@lip6.fr 1 Langages de requêtes XML Concepts des langages de requêtes XML motivations caractéristiques Navigation dans les documents

Plus en détail

Création d objet imbriqué sous PowerShell.

Création d objet imbriqué sous PowerShell. Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

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

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Programmation Internet

Programmation Internet Programmation Internet Mikael DAUTREY Janvier 2007 mikael.dautrey@isitix.com 1 Objectifs du module Acquérir des connaissances de base en programmation Internet Technologies Syntaxe des langages Modèles

Plus en détail

Programmation en Java IUT GEII (MC-II1) 1

Programmation 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étail

GUI Client in HomeSIP Project

GUI Client in HomeSIP Project Documentation de GUI Client in HomeSIP Project 2007 2008 Système Embarqué Guillaume GARDET Benjamin PUSSACQ Hervé SPITZ Damien LOZACH Avant propos...3 Chapitre 1 Environnement de développement...4 1.1.

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

FileMaker Server 12. publication Web personnalisée avec XML

FileMaker Server 12. publication Web personnalisée avec XML FileMaker Server 12 publication Web personnalisée avec XML 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker et Bento sont

Plus en détail

Remote Method Invocation (RMI)

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

Plus en détail

Accès à l'information XML par des requêtes XQuery au travers de son XSchema

Accès à l'information XML par des requêtes XQuery au travers de son XSchema Rapport projet de fin d étude ASR Accès à l'information XML par des requêtes XQuery au travers de son XSchema Réalisé par : DAB Marwa MGARRECH Oussama Encadré par : Mme LOPES GANCARSKI Alda 2011/2012 Remerciements

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

Travaux Pratiques : Lucène - Gestion d un index plein texte

Travaux Pratiques : Lucène - Gestion d un index plein texte Chapter 1 Travaux Pratiques : Lucène - Gestion d un index plein texte Pour ce TP, nous allons étudier l utilisation d un index de recherche textuel OpenSource : Lucene 1. Nous allons créer un projet en

Plus en détail

Introduction aux «Services Web»

Introduction aux «Services Web» Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre

Plus en détail

Documentation CAS à destination des éditeurs

Documentation 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étail

Java Licence Professionnelle CISII, 2009-2010. Cours 2 : Classes et Objets

Java Licence Professionnelle CISII, 2009-2010. Cours 2 : Classes et Objets Licence Professionnelle CISII, 2009-2010 Cours 2 : Classes et Objets 1 Classes et Objets Objectifs des LOO : - Manipuler des objets - Découper les programmes suivant les types des objets manipulés - Regrouper

Plus en détail

Université de Bangui. Modélisons en UML

Université de Bangui. Modélisons en UML Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur 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étail

Introduction : les processus. Introduction : les threads. Plan

Introduction : 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étail

La carte à puce. Jean-Philippe Babau

La carte à puce. Jean-Philippe Babau La carte à puce Jean-Philippe Babau Département Informatique INSA Lyon Certains éléments de cette présentation sont issus de documents Gemplus Research Group 1 Introduction Carte à puce de plus en plus

Plus en détail

Programmation Objet Java Correction

Programmation 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étail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Synchro et Threads Java TM

Synchro 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étail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

Projet de programmation (IK3) : TP n 1 Correction

Projet 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étail

Cours 1: Java et les objets

Cours 1: Java et les objets Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/

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

Tp 1 correction. Structures de données (IF2)

Tp 1 correction. Structures de données (IF2) Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que

Plus en détail

TD3: tableaux avancées, première classe et chaînes

TD3: 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

EXTENSION D UN OUTIL DE VISUALISATION DE TRACES

EXTENSION D UN OUTIL DE VISUALISATION DE TRACES ASR9 - Projet de Fin d Études EXTENSION D UN OUTIL DE VISUALISATION DE TRACES Encadré par: M. François TRAHAY Mayssem BOUZAZI Khalil JEBALI Octobre 2013 - Janvier 2014 Remerciements Nous tenons à remercier

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

Catalogue des formations Edition 2015

Catalogue des formations Edition 2015 Antidot - Formations Catalogue des formations Edition 2015 : catalogue_formation_2015 Révision du 06.01.2015 Sommaire!!"##$%&'( )! $*$+,(-'(."##'+.'&( /!,'.0+"1"2%'( /!!."3'( /! $(3&"3"!(-4(5(.$,$1"24'(-'!(6"&#$,%"+!(7('-%,%"+()89:(;(

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

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

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

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 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étail

Un ordonnanceur stupide

Un 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étail