GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2
|
|
- Romain Lefèvre
- il y a 8 ans
- Total affichages :
Transcription
1 Institut Géographique National Laboratoire COGIT GeOxygene : travaux pratiques Exercices pour la version PostGIS version février 2007 Eric Grosso Résumé : Ce document a pour but de comprendre GeOxygene au travers de divers exercices et fait suite au document intitulé «GeOxygene : installation pas à pas». Tous les éléments nécessaires à la réalisation de ces exercices sont fournis avec le CD lors de la formation. GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 1
2 Exercice 1 : Création d une structure de données à stocker A FAIRE : Créer une structure d accueil GeOxygene afin de pouvoir manipuler la classe «Salle» définie comme suit : Cette structure d accueil doit comprendre la table SALLE (manipulation du SGBD via SQL), le fichier correspondant au pont relationnel objet «repository_salle.xml» (manipulation de OJB via XML) et enfin la classe «objet» Java (manipulation Java). Tous les composants seront créés manuellement afin de comprendre les différents niveaux d implémentation de GeOxygene, à savoir PostgreSQL-PostGIS, OJB et Java. Par la suite, notamment lors du prochain exercice, la création se fera de manière automatique. Correction de l exercice 1 Au niveau du Système de Gestion de Bases de Données : Nous créons tout d abord la table correspondante à la classe «salle» grâce à la syntaxe SQL suivante : CREATE TABLE salle ( cogitid INTEGER PRIMARY KEY, nom VARCHAR(50), numero INTEGER, superficie DOUBLE PRECISION ); Nous créons ensuite la géométrie associée à cette table via la syntaxe SQL suivante : SELECT AddGeometrycolumn ('','salle','geom','-1','geometry',3); GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 2
3 La syntaxe SQL peut s exécuter depuis pgadmin (Outils puis Editeurs de requêtes) ou depuis la vue Instant SQL dans la perspective dbedit (pour plus d informations, consultez le document «org.eclipse.platform.doc.user_3.0.1.pdf»). Au niveau du langage objet (Java) : Pour plus de détails, se référer au manuel utilisateur page 6. La classe Salle hérite de la classe FT_Feature ; de fait, elle hérite d un identifiant (id de type «int») et d une géométrie (geom de type «GM_Object»). Seuls restent à créer les trois autres attributs relatifs à la classe «Salle», à savoir «nom», «numero» et «superficie». A partir de la création de ces derniers, on crée soit manuellement soit dynamiquement (cf. «org.eclipse.platform.doc.user_3.0.1.pdf») les Getters et Setters correspondants. La classe «Salle» s écrit comme suit : package fr.ign.cogit.geoxygene.user.exercice; import fr.ign.cogit.geoxygene.feature.ft_feature; public class Salle extends FT_Feature{ protected String nom; public String getnom() {return nom;} public void setnom(string nom) {this.nom = nom;} protected int numero; public int getnumero() {return numero;} public void setnumero(int numero) {this.numero = numero;} } protected double superficie; public double getsuperficie() {return superficie;} public void setsuperficie(double superficie) {this.superficie = superficie;} Au niveau du pont relationnel-objet : Pour plus de détails, se référer au manuel utilisateur page 6. Il reste enfin à créer le pont relationnel-objet, i.e. le fichier de mapping OJB. Pour ce faire, il est nécessaire d écrire la correspondance entre une classe objet (Java) et une table du SGBD : <class-descriptor class="cheminclassejava" table="nomtable" > et la correspondence entre chaque attribut de cette classe objet et de cette table en précisant le type de l attribut (INTEGER, DOUBLE, VARCHAR, etc.) : <field-descriptor name="nomattributclassejava" column="nomattributtable" jdbc-type="type" /> GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 3
4 Ainsi, dans le présent exemple, nous créons le fichier de mapping «repository_salle.xml» comme suit : <class-descriptor class=" fr.ign.cogit.geoxygene.user.exercice.salle" table="salle" > <field-descriptor name="id" column="cogitid" jdbc-type="integer" primarykey="true" autoincrement="true"/> <field-descriptor name="nom" column="nom" jdbc-type="varchar" /> <field-descriptor name="numero" column="numero" jdbc-type="integer" /> <field-descriptor name="superficie" column="superficie" jdbc-type="double" /> <field-descriptor name="geom" column="geom" jdbc-type="struct" conversion="fr.ign.cogit.geoxygene.datatools.ojb.geomgeoxygene2dbms" /> </class-descriptor> Remarque : Le type «STRUCT» est utilisé dans le cadre d un attribut dont le type est défini par l utilisateur, comme par exemple ici avec la géométrie. Il est de fait nécessaire de fournir en supplément un convertisseur, ici la classe «fr.ign.cogit.geoxygene.datatools.ojb.geomgeoxygene2dbms». Enfin, afin que le système prenne en compte le fichier de mapping repository_salle.xml, il est nécessaire d ajouter les informations suivantes dans le fichier «repository.xml», fichier qui centralise les informations relatives au pont relationnel-objet. <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE descriptor-repository PUBLIC "-//Apache Software Foundation//DTD OJB Repository//EN" "repository.dtd" [ <!ENTITY database SYSTEM "repository_database.xml"> <!ENTITY internal SYSTEM "repository_internal.xml"> <!ENTITY geo SYSTEM "repository_geo.xml"> <!ENTITY dataset SYSTEM "repository_dataset.xml"> <!ENTITY salle SYSTEM "repository_salle.xml"> ]> <descriptor-repository version="1.0" isolation-level="read-uncommitted" proxy-prefetching-limit="50"> <!-- parametres de la connection au SGBD--> &database; <!-- exemple classes geographiques --> <!-- &geo; --> &salle; <!-- jeux de donnees --> &dataset; <!-- fichier de mapping internes a OJB INDISPENSABLE --> &internal; </descriptor-repository> GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 4
5 Exercice 2 : Chargement de données sous GeOxygene à partir de fichiers au format «SIG» : utilisation de la commande «shp2pgsql» de PostgreSQL-PostGIS et de la console GeOxygene A FAIRE : Charger au sein du SGBD PostgreSQL-PostGIS des données géographiques (comportant une géométrie) contenues dans un fichier au format ESRI Shape, à l aide de la commande «shp2pgsql» (pour plus de détails, se référer au document «GeOxygene : installation pas à pas»). Information : Le fichier de données géographiques a utilisé est le fichier dep_france_dom.shp contenu dans le dossier «donnees/france» fourni avec le CD de la formation. Le nom utilisé pour la table sera «departements». Utiliser ensuite la console GeOxygene afin de générer automatiquement les fichiers de mapping et java correspondants. Cet exercice est utile dans la compréhension du chargement de données et de la console GeOxygene. Correction de l exercice 2 Chargement des données au sein de PostgreSQL-PostGIS : Prérequis : copier le répertoire «donnees» fourni avec le CD dans C:\. On suppose qu une base nommée «postgres» a été créée dans le SGBD PostgreSQL-PostGIS et que les fonctions liées à PostGIS ont été activées pour cette dernière. Si ce n est pas le cas, se référer à la partie «Chargement de données au format shape sous PostgreSQL-PostGIS» du document «GeOxygene : installation pas à pas». Le chargement de données s effectue comme suit : - ouvrir une console en tant qu utilisateur postgres (démarrer Programmes Accessoires Invites de commandes -). Pour ce faire, ouvrir une console puis taper : runas /user:postgres cmd taper le mot de passe de l utilisateur postgres, i.e. postgres. - taper ensuite la commande suivante dans la console ainsi ouverte : shp2pgsql -g geom -D -I C:\donnees\france\dep_france_dom.shp departements psql postgres Rappel de la commande générique utilisée : shp2pgsql -g geom -D -I shapefile nom_table psql nom_base_donnees l option «g» avec comme arguement «geom» spécifie le nom de la colonne géométrique (par défaut «the_geom»). GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 5
6 Pour plus d informations sur les différentes options de la commande «shp2pgsql», taper simplement «shp2pgsql» dans une console. La table «departements» est créée et le rapport suivant apparaît : Utilisation de la console GeOxygene - génération automatique des fichiers de mapping et java correspondants : Le lancement de la console GeOxygene s effectue depuis la classe Java relative à la console située dans le package fr.ign.cogit.geoxygene.appli, comme illustré cidessous : Information : pour lancer l application depuis Eclipse, cliquer sur le bouton droit de la souris lorsque le curseur est sur la classe Console.java puis choisir «Run As Java Application». GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 6
7 La console apparaît. Cliquer ensuite sur «SQL to Java» : Sélectionner la table que vous voulez charger sous GeOxygene, ici «departements» : GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 7
8 Cliquer sur OK puis remplir de la manière suivante (changer «eric» par votre nom) : Cliquer sur OK. La console retourne ce message : Nous pouvons dors et déjà constater ce qui a été généré par la console : - Fichier de mapping (mapping.ojb1.eric.repository_departements.xml) : GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 8
9 - Classe Java (fr.ign.cogit.geoxygene.user.exercice.departements ) : Il faut maintenant faire pointer le fichier central des fichiers de mapping (repository.xml) vers le fichier de mapping que nous avons généré, à savoir «repository_departements.xml» : GeOxygene : travaux pratiques Exercices pour la version PostGIS version 1.2 9
10 Générer ensuite les identifiants COGIT (COGITID) à partir de la console (Manage Data) en choisissant la table que vous voulez traiter, ici «departements»: Le chargement des données est maintenant terminé. GeOxygene : travaux pratiques Exercices pour la version PostGIS version
11 A FAIRE : Exercice 3 : Visualisation des données Charger les données de l exercice précédent et les visualiser tout d abord avec le visualisateur intégré de GeOxygene puis sous Jump ou OpenJump (via la création d un menu). Correction de l exercice 3 Visualisation à l aide du visualisateur GeOxygene : Créer une classe Java dans le package fr.ign.cogit.appli.exercice.visu que nous nommerons «VisuGeOxygene» : package fr.ign.cogit.geoxygene.user.exercice.visu; import fr.ign.cogit.geoxygene.user.exerice.departements; import fr.ign.cogit.geoxygene.datatools.geodatabase; import fr.ign.cogit.geoxygene.datatools.ojb.geodatabaseojbfactory; import fr.ign.cogit.geoxygene.feature.ft_featurecollection; import fr.ign.cogit.geoxygene.util.viewer.objectviewer; /**Classe qui permet la visualisation de la carte des départements français */ public class VisuGeOxygene { /**Méthode qui lance l'application*/ public static void main(string[] args) { //création d une nouvelle connexion Geodatabase geodb = GeodatabaseOjbFactory.newInstance(); //chargement des données de la classe donnees.eric.exercice.departements FT_FeatureCollection ftfc = geodb.loadallfeatures(departements.class); } } //affichage des données dans le visualisateur GeOxygene ObjectViewer viewer = new ObjectViewer(); viewer.addfeaturecollection(ftfc, "departements francais"); Lancer ensuite l application depuis Eclipse issue de la classe créée (cliquer sur le bouton droit de la souris lorsque le curseur est sur la classe java puis choisir «Run As Java Application»). S affiche alors : GeOxygene : travaux pratiques Exercices pour la version PostGIS version
12 Visualisation à l aide de JUMP : Créer une classe Java dans le package fr.ign.cogit.appli.exercice.visu que nous nommerons «VisuJump» : package fr.ign.cogit.geoxygene.user.exercice.visu; import java.awt.color; import com.vividsolutions.jump.workbench.plugin.plugincontext; import com.vividsolutions.jump.workbench.ui.plugin.featureinfoplugin; import fr.ign.cogit.geoxygene.user.exercice.departements; import fr.ign.cogit.appli.commun.interfacejump.utiljump; import fr.ign.cogit.geoxygene.datatools.geodatabase; import fr.ign.cogit.geoxygene.datatools.ojb.geodatabaseojbfactory; import fr.ign.cogit.geoxygene.feature.ft_featurecollection; public class VisuJump extends extends FeatureInfoPlugIn { /**initialisation de l'interface dans le menu de JUMP : ajout d'un menu * GeOxygene/Departements/Affichage*/ public void initialize (PlugInContext context) throws Exception { context.getfeatureinstaller().addmainmenuitem(this,new String[]{"GeOxygene","Departements"}, "Affichage", false, null, null); } /**partie du code relative à l exécution*/ public boolean execute(plugincontext context) throws Exception { //création d une nouvelle connexion Geodatabase geodb = GeodatabaseOjbFactory.newInstance(); //chargement des données de la classe donnees.eric.exercice.departements FT_FeatureCollection ftfc = geodb.loadallfeatures(departements.class); //affichage des données en rose sous Jump UtilJump.afficheCollection(context, ftfc, "France","Départements",Color.pink); } } return true; Nous remarquons que ce fichier se compose de deux parties. La première («unitialize») est relative à l initialisation d un menu dans JUMP (GeOxygene Departements Affichage), la seconde au programme qui sera lancé à l aide du menu créé. Afin que cette classe soit prise en compte au lancement de JUMP, il est nécessaire d ajouter la ligne suivante dans le fichier «workbench-properties.xml» relatif à JUMP (répertoire JUMP/bin) : <plug-in>fr.ign.cogit.geoxygene.user.exercice.visu.visujump</plug-in> GeOxygene : travaux pratiques Exercices pour la version PostGIS version
13 Lancer ensuite JUMP et cliquer sur le menu «GeOxygene Departements Affichage». GeOxygene : travaux pratiques Exercices pour la version PostGIS version
14 A FAIRE : Exercice 4 : Création et manipulation de données Créer un attribut supplémentaire nommé «superficie» pour les départements et remplir cet attribut de manière persistante dans le SGBD. Correction de l exercice 4 Au niveau du Système de Gestion de Bases de Données : Nous créons tout d abord la colonne «superficie» correspondant à la table «departements» grâce à la syntaxe SQL suivante : ALTER TABLE departements add superficie DOUBLE PRECISION ; La syntaxe SQL peut s exécuter depuis pgadmin (Outils puis Editeurs de requêtes) ou depuis la vue Instant SQL dans la perspective dbedit (pour plus d informations, consultez le document «org.eclipse.platform.doc.user_3.0.1.pdf»). Il est également possible de créer cette même colonne à l aide des outils interactifs proposés par pgadmin. Pour ce faire, procéder comme suit : - clic droit sur la table «departements» puis «Ajouter un objet Ajouter une colonne» : GeOxygene : travaux pratiques Exercices pour la version PostGIS version
15 - l interface suivante apparaît. Remplir comme ci-dessous puis cliquer sur «OK» : Remarque : Les attributs sont à écrire de préférence en caractère alpha et en minuscules. Au niveau du langage objet (Java) : Il est maintenant nécessaire d ajouter l attribut «superficie» au niveau objet. Pour ce faire, ajouter les lignes de code suivantes dans la classe «donnees.user.exercice.departements». protected double superficie; public double getsuperficie() {return superficie;} public void setsuperficie(double superficie) {this.superficie = superficie;} Au niveau du pont relationnel-objet : Il reste enfin à ajouter la correspondance dans le fichier de mapping OJB «repository_departements.xml». Pour ce faire, ajouter la ligne suivante : <field-descriptor name="superficie" column=" superficie " jdbc-type="double" /> Dans le cas présent, il est inutile d ajouter quoique ce soit dans le fichier de mapping «repository.xml» puisque «repository_departements.xml» est déjà pris en compte. GeOxygene : travaux pratiques Exercices pour la version PostGIS version
16 Remarque importante : Lors de la création de la table «departements», une contrainte sur la géométrie des objets est créée : CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'MULTIPOLYGON'::text OR geom IS NULL) Cette contrainte oblige les objets de la table «departements» à avoir une géométrie de type «MULTIPOLYGON» ou une géométrie nulle. Or certains objets créés sont de type «POLYGON» et ne vérifient donc pas la contrainte. Il s agit d un bug dans la commande «shp2pgsql». Ce dernier a été identifié et est en passe d être résolu dans les prochaines versions. Dès lors que nous voulons modifier la table, il devient obligatoire soit de supprimer cette contrainte, soit de la rendre plus «souple», en donnant la possibilité aux objets d être soit de type géométrique «MULTIPOLYGON» soit de type «POLYGON». Nous faisons ici le choix de la seconde solution et de fait, exécutons la requête suivante suivante : ALTER TABLE departements DROP CONSTRAINT enforce_geotype_geom; ALTER TABLE departements ADD CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'POLYGON'::text OR geometrytype(geom) = 'MULTIPOLYGON'::text OR geom IS NULL); Créons maintenant une classe permettant de calculer la superficie des départements et de remplir la colonne «superficie» de la table «departements» : package fr.ign.cogit.geoxygene.user.exercice.visu; import java.util.iterator; import fr.ign.cogit.geoxygene.user.exercice.departements; import fr.ign.cogit.geoxygene.datatools.geodatabase; import fr.ign.cogit.geoxygene.datatools.ojb.geodatabaseojbfactory; import fr.ign.cogit.geoxygene.feature.ft_featurecollection; public class CalculSuperficie { public static void main(string[] args) { //définition des variables Departements departement; //création d une nouvelle connexion Geodatabase geodb = GeodatabaseOjbFactory.newInstance(); //ouverture d'une transaction relative à la connexion geodb.begin(); //chargement des données de la classe donnees.eric.exercice.departements FT_FeatureCollection ftfc = geodb.loadallfeatures(departements.class); //calcul et instanciation de l'attribut superficie Iterator<Departements> it = ftfc.getelements().iterator(); while(it.hasnext()){ GeOxygene : travaux pratiques Exercices pour la version PostGIS version
17 } departement = it.next(); departement.setsuperficie(departement.getgeom().area()); } } //commit et ferme la transaction geodb.commit(); Lancer l application et constater le résultat en visualisant la table «departements» : GeOxygene : travaux pratiques Exercices pour la version PostGIS version
IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse
IFT287 Exploitation de base de données relationnelles et orientées objet Laboratoire Mon premier programme Java en Eclipse Comment faire? Nous allons utiliser l environnement de travail proposé par Eclipse
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étailTP1 : 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étailOpenPaaS 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étailDEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.
DEVAKI NEXTOBJET 1 Présentation...2 Installation...3 Prérequis...3 Windows...3 Linux...3 Exécution...4 Concevoir une BDD avec Devaki NextObject...5 Nouveau MCD...5 Configurer la connexion à la base de
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é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étailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailBases de Données relationnelles et leurs systèmes de Gestion
III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation
Plus en détailLa 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étailBIRT (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étailProcédure d'installation de PostgreSQL pour Windows
Version du logiciel : 9.0.3 (64 bits) VEREMES 42 av. des Jardins 66240 St-Estève www.veremes.com VEREMES Version : 9.0.3 Page 1 / 15 Table des matières 1. Avertissement... 4 2. Prérequis... 5 3. Téléchargement...
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
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é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é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étailSommaire. Etablir une connexion avec une base de données distante sur PostGreSQL
Sommaire Etablir une connexion avec une base de données distante sur PostGreSQL 1 Connexion avec le module dblink...3 1.1 Création du module dblink... 3 1.2 Exemple de Mise en oeuvre... 4 1.3 Création
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étailLes BASES de DONNEES dans WampServer
Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui
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é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étailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailJava DataBaseConnectivity
Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage
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étailLe langage SQL (première partie) c Olivier Caron
Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)
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é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étailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
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étailCompte 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étailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailUtilisation du BDE pour la maintenance des fichiers DBF de l'application TopoCad:
Utilisation du BDE pour la maintenance des fichiers DBF de l'application TopoCad: Nous allons voir autour d'un exemple concret une facon de modifier les fichiers DBF de l'application. Le but est de modifier
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détail1. Base de données SQLite
Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis
Plus en détailSystème Normalisé de Gestion des Bibliothèques -SYNGEB : version Réseau-
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Centre de Recherche sur l Information Scientifique et Technique Système Normalisé de Gestion des Bibliothèques -SYNGEB : version Réseau-
Plus en détailDossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10
Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs
Plus en détailBASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
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étailLa gestion de la persistance avec Hibernate. Hibernate et la gestion de persistance. La gestion de la persistance (1/2) Introduction
La gestion de la persistance avec et la gestion de persistance Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com
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é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étailCours 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étailI4 : Bases de Données
I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables
Plus en détailCOMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA
COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA DEFINITION D UNE BIBLIOTHEQUE D ACCES A UNE BASE DE DONNEES Cet article s adresse aux administrateurs SAS en charge de la mise à disposition des
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étailEnvironnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Plus en détailDé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étailObjectifs du TP : Initiation à Access
Objectifs du TP : Initiation à Access I. Introduction Microsoft Access fait partie de l ensemble Microsoft Office. C est un SGBDR (système de gestion de bases de données relationnelles) présentant une
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étailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailCompte-rendu de projet de Système de gestion de base de données
Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison
Plus en détailLes frameworks au coeur des applications web
Les frameworks au coeur des applications web Mémoire de bachelor réalisé par : Arielle Moro Directeur de mémoire : Peter Daehne, Professeur HES Genève, le vendredi 27 août 2010, Haute Ecole de Gestion
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détail< Atelier 1 /> Démarrer une application web
MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE
Plus en détailGUIDE D INSTALLATION DE L APPLICATION GECOL SUR
GUIDE D INSTALLATION DE L APPLICATION GECOL SUR SERVEUR WINDOWS INTRODUCTION Le guide d installation qui va suivre va tenter d amener de la simplicité et de centraliser toutes les informations nécessaires
Plus en détailIngénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau
labsticc.univ-brest.fr/pages_perso/babau/ Ingénierie Dirigée par les Modèles Editeurs de modèles (Eclipse Modeling Tools) Jean-Philippe Babau Département Informatique, UFR Sciences, Laboratoire Lab-STICC
Plus en détailWeb 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é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étailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailTD/TP 1 Introduction au SDK d Android
TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition
Plus en détailApproche Contract First
Exemple HelpDesk Approche Contract First Développement d un premier web service en utilisant l approche contract first (ou WSDL First) Écriture du wsdl avant d écrire le code java Autre possibilité implementation
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étailDéfinition des Webservices Ordre de paiement par email. Version 1.0
Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document
Plus en détailEclipse atelier Java
Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer
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é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étailAccess et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.
Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,
Plus en détailModule 10 : Supplément 2
Module 10 : Supplément 2 Ce supplément est conçu pour être utilisé avec l ouvrage publié aux éditions Tsoft ou Eyrolles, intitulé Lotus Domino 8 Administration : Gestion et Optimisation. Configurer l index
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 par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
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étailRAPPELS 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étailSélection du contrôleur
Démo CoDeSys - 1 - 1. Configuration de l environnement de travail : Lancer le logiciel CoDeSys Fichier Nouveau Lors de la première utilisation, une boîte de dialogue apparaît permettant la sélection du
Plus en détailPrésentation du module Base de données spatio-temporelles
Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes
Plus en détailRéplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f
PGDay Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f Réplication Réplications, disponibilités, durabilités Evolution dans la base de données : Postgres 8.2 : warm standby Postgres 9.0 : hot
Plus en détailUNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE
UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE TP N 1 : Initiation à L Access I. Introduction Microsoft Access fait partie
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é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é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étailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailTP Programmation Java / JDBC / Oracle
TP Programmation Java / JDBC / Oracle 1. Connectivité avec une base de données Oracle au travers de l interface JDBC L interface de programmation (API) JDBC (Java DataBase Connectivity) est une librairie
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étailPlateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.
Plateforme PAYZEN Intégration du module de paiement pour la plateforme Magento version 1.3.x.x Paiement en plusieurs fois Version 1.4a Guide d intégration du module de paiement Multiple Magento 1/24 SUIVI,
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étailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
Plus en détailModélisation et Gestion des bases de données avec mysql workbench
Modélisation et Gestion des bases de données avec mysql workbench par novembre 2011 Table des matières 1 Installation 3 1.1 Ecran de chargement 3 1.2 Page d accueil 3 2 Réalisation d une base de données
Plus en détailInfo0101 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é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étailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailPolymorphisme, 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