Infotronique ITR2 Semaine du 16/02 au 27/02/2009 TP partie 1 Mapping Objet Relationnel Un compte rendu de ce TP est à rendre avant le 27/02/2009.
|
|
- Flavie Leboeuf
- il y a 8 ans
- Total affichages :
Transcription
1 Infotronique ITR2 Semaine du 16/02 au 27/02/2009 TP partie 1 Mapping Objet Relationnel Un compte rendu de ce TP est à rendre avant le 27/02/ Connexion client serveur JDBC Une connexion JDBC met en œuvre les éléments suivants : chargement du driver : différentes fonctionnalités sont offertes par les différents drivers JDBC d Oracle. Le driver OCI utilise un protocole spécifique et nécessite l installation des clients Oracle (librairies) sur les machines qui exécutent la partie applicative. Le driver thin utilise le protocole de communication standard Oracle Net et ne requiert que le pilote JDBC sous la forme d un fichier.zip ou.jar. Les différentes fonctions sont réparties dans deux types de packages : ceux préfixés par java sont les packages standard, ceux préfixés par oracle sont les packages propres à Oracle incluant des extensions propriétaires du protocole JDBC. Le tableau 1 récapitule les fonctionnalités fournies par les différents packages. Directive d import import java.sql.* ; import oracle.jdbc.* ; import oracle.jdbc.pool.* ; import oracle.sql.* ; Fonctionnalités package JDBC standard package JDBC contenant les extension d Oracle package OracleDataSource package contenant les types étendus TAB. 1 Directive import et fonctionnalités connexion à la base : utiliser la méthode getconnection(url, user, password) de la classe DriverManager. création d un statement : l objet Statement (environnement de connexion) possède les méthodes nécessaires pour réaliser les requêtes sur la base à laquelle il est associé. Il existe 3 types de Statement : 1. Statement : requêtes statiques 2. PreparedStatement : requêtes dynamiques précompilées analogues aux curseurs paramétrés de PL/SQL 3. CallableStatement : procédures stockées Pour les types 2 et 3, le passage de paramètres se fait par une méthode set : ps.setxxx(numéro colonne, valeur) Exemple : PreparedStatement ps = connect.preparestatement( "SELECT * FROM etudiant WHERE numero=?"); ps.setint(1, 34); exécution une requête : il existe 3 types d exécutions 1. executequery() : pour les requêtes SELECT qui retournent un ResultSet ; 2. executeupdate() : pour les requêtes INSERT, UPDATE, DELETE, CREATE TABLE, DROP TABLE qui retournent un entier (nombre de tuples traités) ; 3. execute() : pour les procédures stockées. traitement des données renvoyées : l objet ResultSet permet d accéder aux attributs des tuples retourné par l exécution executequery(). Un ResultSet se parcourt itérativement ligne par ligne au moyen de la méthode next() qui retourne false si le dernier tuple a été lu, true sinon. Pour lire la première ligne on doit appeler une fois next(). L accès aux valeurs des attributs se fait par les méthodes de la forme getxxx() ou GetObject(int col). Eric Leclercq Département IEM 1
2 Exemple : val = rs.getint(3); // accès à la 3ème colonne qui est un entier. Les métadonnées : la méthode getmetadata() permet d obtenir des informations sur les types de données d un ResulSet, elle renvoie des ResultSetMetaData on peut connaître entre autres : le nombre de colonnes : getcolummncount() le nom d une colonne : getcolumnname(int col) le type d une colonne : getcolumntypename(int col) la précision d une colonne : getprecision(int col) Les trois programmes suivants présentent l enchaînement des méthodes permettant d établir une connexion à une instance. Le premier est écrit avec le méthodes de l API JDBC standard, le second permet de traiter des implémentation non standard des JDK, le troisième utilise une classe wrapper proposée par Oracle pour établir une connexion de façon plus concise. C est ce dernier mode de connexion qui est utilisé pour la création de pools de connexions. Cette construction permet de définir une connexion physique et de lui associer plusieurs connexions logiques la partageant, ce qui a pour effet d augmenter les performances du protocole lors de l ouverture de connexions multiples. 1 import java.sql.*; class testel2{ 3 static private Connection conn; static final String query = "select Essai JDBC : sysdate from dual"; 5 public static void main(string args[]) throws SQLException{ try{ 7 Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection( 9 "jdbc:oracle:thin:@machine:port:sid", "login", 11 "passwd"); }catch(exception e){e.printstacktrace();} 13 Statement stmt = conn.createstatement(); ResultSet rset = stmt.executequery(query); 15 while (rset.next()) System.out.println(rset.getString(1)); 17 } } Listing 1 Connexion avec les méthodes standard import java.sql.*; 2 import oracle.jdbc.*; class testel1{ 4 static final String connect_string = "jdbc:oracle:thin:login/passwd@machine:port:base"; 6 static final String query = "select Essai JDBC : sysdate from dual"; public static void main(string args[]) throws SQLException{ 8 Connection conn; DriverManager.registerDriver(new oracle.jdbc.oracledriver()); 10 conn = DriverManager.getConnection(connect_string); Statement stmt = conn.createstatement(); 12 ResultSet rset = stmt.executequery(query); while (rset.next()) 14 System.out.println(rset.getString(1)); } 16 } Listing 2 Connexion avec les méthodes standard pour JDK spécifique import java.sql.*; 2 import oracle.jdbc.*; import oracle.jdbc.pool.oracledatasource; 4 class testel{ public static void main (String args[]) throws SQLException{ 6 OracleDataSource ods = new OracleDataSource(); ods.seturl("jdbc:oracle:thin:login/passwd@machine:port:sid"); 8 Connection conn = ods.getconnection(); // Création d un objet Oracle DatabaseMetaData Eric Leclercq Département IEM 2
3 10 DatabaseMetaData meta = conn.getmetadata(); // Récupération d information sur le driver 12 System.out.println("driver JDBC " + meta.getdriverversion()); } 14 } Listing 3 Connexion avec wrapper 2 Les principes généraux d Hibernate Le développement d applications reposant sur les technologies internet oblige à travailler avec différents paradigmes de programmation comme par exemple le paradigme objet des langages de programmation orientés objet et la notion de table des bases de données relationnelle. Hibernate est un outil de mapping objet relationnel pour les applications Java. Le terme mapping objet/relationnel (ORM) décrit une technique consistant à mettre en correspondance la représentation des objet manipulés par les applications (objets métier) et leur représentation dans une base de données relationnelle définie par un schéma SQL. La base de données permet alors d assurer la persistance des propriétés des objets. FIG. 1 Architecture générale d Hibernate 3 Élements techniques Hibernate est un ensemble de librairies fournissant un framework pour la mise en place de mapping objetrelationnel. Hibernate est développé en open source et distribué sous licence GNU. Hibernate ne fournit pas seulement un mapping objet-relationnel mais également un mécanisme et un langage de requêtes. Ainsi, il peut générer dynamiquement des requêtes SQL et décharger les développeur d une parties des tâches de gestion des resultsets propres à JDBC. Les objets metier Java développés en s appuyant sur un couche de persitance comme Hibernate permettent un indépendance vis à vis du SGBD. Une première vue de haut niveau de l architecture d Hibernate montre que Hibernate vient s intercaler entre l application et la base de données pour proposer les services de persistances. Il utilise pour cela une connexion à la base de données (driver), des éléments de configuration contenant des propriétés nécessaires à son fonctionnement et des fichiers de mapping en XML pour établir les correspondances tables objets Java. Les éléments essentiels au fonctionnement de la couche de persistence sont : Session (org.hibernate.session) : représente une conversation entre l application et l entrepôt de persistance, encapsule une connexion JDBC, fabrique des objets Transaction. Objet mono-threadé, à durée de vie courte, représentant une conversation entre l application et l entrepôt de persistance. Contient un cache de premier niveau et obligatoire des objets persistants. SessionFactory (org.hibernate.sessionfactory) : fabrique des session et un client de ConnectionProvider. Cache immuable (threadsafe) des correspondances (mappings) vers une (et une seule) base de données. Coûteuse à construire car implique l analyse des fichiers de configuration. Construite à partir d un objet Configuration. Transaction (org.hibernate.transaction) : utilisé par l application pour définir une unité de travail atomique, abstrait l application des transactions sous-jacentes qu elles soient JDBC, JTA ou autres ; Eric Leclercq Département IEM 3
4 ConnectionProvider (org.hibernate.connection.connectionprovider) : fabrique des pools de connexion JDBC, abstrait l application de la Datasource ou du DriverManager sous-jacent ; TransactionFactory (org.hibernate.transactionfactory) : fabrique des instances de Transaction. Les types d objets manipulés sont les suivants : objets et collections persistants : sont en général les objets de type JavaBean (ou POJOs), la seule particularité est qu ils sont associés avec une (et une seule) Session. Dès que la Session est fermée, ils seront détachés et libres d être utilisés par n importe laquelle des couches de l application. objets et collections transients : instances de classes persistantes qui ne sont actuellement pas associées à une Session. Elles ont pu être instanciées par l application et ne pas avoir (encore) été rendues persistantes s ou elles ont pu être instanciées par une Session fermée. Une instance d une classe persistante peut être dans l un des trois états de persistance suivants : passager/temporaire (transient) : instance non associée (et n ayant jamais été associée) à un contexte de persistance, instance sans identité persistante c est-à-dire sans valeur de clé primaire persistant : l instance est associée au contexte de persistance, elle possède une valeur de clé primaire et, peut-être, un enregistrement correspondant dans la base. Pour un contexte de persistance particulier, Pour un contexte de persistance particulier, garantie par Hibernate de l équivalence entre l identité persistante et l identité Java. détaché : l instance a été associée au contexte de persistance mais ce contexte a été fermé, ou l instance a été sérialisée vers un autre processus. Elle possède une identité persistante et peut-être un enregistrement correspondant dans la base. Pour des instances détachées, Hibernate ne donne aucune garantie sur la relation entre l identité persistante et l identité Java Les librairies nécessaires au TP sont : Bibliothèques Hibernate (en plus de hibernate3.jar) : antlr.jar : ANTLR (Another Tool for Language Recognition), indispensable à l exécution cglib-full.jar : générateur de bytecode CGLIB, indispensable à l exécution asm.jar, asm-attrs.jars : outils de manipulation de bytecode Java, requis si utilisation de CGLIB commons-collections.jar : bibliothèques du projet Apache Jakarta Commons pour manipuler les collections, indispensable à l exécution commons-logging.jar : bibliothèques du projet Apache Jakarta Commons pour utiliser la journalisation de façon transparente, indispensable à l exécution ehcache.jar : utilisé pour gérer le cache de second niveau si aucun autre fournisseur de cache n est paramètré, optionnel jta.jar : API JTA strandard, requis pour les applications s exécutant en dehors d un serveur d applications dom4j.jar : Aanalyseur Syntaxique de configuration XML et de mapping, indispensable à l exécution log4j.jar : mécanisme de journalisation (log) sous-jacent pouvant être utilisé par Commons Logging, optionnel Les éléments à modifier sont : hibernate.cfg.xml : fichier de configuration global contenant : les paramètres de connexion à la base de données (pilote, login, mot de passe, url, etc.) le dialecte SQL de la base de données la gestion de pool de connexions le niveau de détails des traces Pour chaque classe persistante réaliser : ClassePersistante.java : implémentation POJO (Plain Old Java Objects) de la classe ClassePersistante.hbm.xml : fichier XML de correspondances (mapping) ClassePersistanteHome.java : implémentation du DAO (Data Access Object) pour l isolation avec la couche de persistance, optionnel ClassePersistante.sql : code SQL de création de la ou les relations correspondantes, optionnel, réalisé dynamiquement par Hibernate Se connecter sur le site html pour avoir une description du mode opératoire et télécharger Hibernate. 4 Exemple Nous utiliserons comme exemple une petite application permettant de gérer une liste d étudiants, les cours auxquels ils sont inscrits ainsi que les salles attribuées à chaque cours. Dans un premier temps, réaliser un diagramme de classes UML puis un diagramme de classes spécifique au modèle relationnel. Le diagramme de Eric Leclercq Département IEM 4
5 classe initial comporte 3 classes et 2 associations. Le diagramme de classes UML représente la vue du monde réel. La vue côté logiciel est développée selon : l axe base de données : un diagramme de classes spécifique fait apparaître les identifiants, les identifiants externes, les types de chaque attribut (spécifique au SGBD), les séquences éventuelles, les classes associations. Les associations disparaissent et sont traduites par les identifiants externes et evéntuellement des triggers. l axe programmation objet (Java) : un diagramme de classe spécifique au langage de programmation retenu (ici Java) faissant apparaître les types des propriétés. Les associations disparaissent au profit de listes de références ou de tableaux de références. 4.1 Les classes du notre modèle de données La première étape consite à créer les classes Java du modèle de données. On crée tout d abord une classe Java respectant les directives JavaBeans c est-à-dire une méthode get et une méthode set pour chaque attribut, un constructeur public sans argument. Un exemple de classe Etudiant est donné ci dessous. public class Student{ 2 private int id; private String firstname; 4 private String lastname; private int semester; 6 private Collection courses; 8 public int getid(){ return id; 10 } 12 public void setid(int id){ this.id = id; 14 } à compléter... Il n y a pas d interface spécifique à implémenter ni classe à étendre, Hibernate fonctionne avec n importe quel type d objet et ne nécessite aucune étape de compilation supplémentaire. 4.2 Décrire les objets dans un fichier HBM La seconde étape consiste à décrire les objets dans un fichier HBM (hibernate-mapping) c est-à-dire pour chaque objet, les attributs qui doivent persister. 1 <hibernate-mapping> 2 <class name="example.student" table="student"> 3 <id name="id" column="id"> 4 <generator class="native"/> 5 </id> 6 <property name="firstname"/> 7 <property name="lastname"/> 8 <property name="semester"/> 9 <set name="courses" table="student_course" lazy="true"> 10 <key column="studentid"/> 11 <many-to-many class="example.course" column="courseid"/> 12 </set> 13 </class> 14 </hibernate-mapping> Les lignes 3 à 5 définissent l identifiant de l objet, ici id. Il est possible de préciser que l on délègue la gestion de l identifiant à la base de données La balise <property> permet de définir les attributs simples (types primitifs de Java sont supportés ainsi que String et Date). Les lignes 9 à 12 définissent enfin entre la classe Student et la classe Course. Le paramètre lazy permet de ne charger les objets Course que lorsque l application en fait explicitement la demande. Eric Leclercq Département IEM 5
6 5 Manipulation des objets Une fois le mapping décrit, il est possible de manipuler les objets. Les fonctionnalités courantes CRUD (create, read, update, delete) sont disponibles. 1 // Création Student student = new Student(); 3 student.setfirstname("toto"); student.setlastname("durant"); 5 student.setsemester(1); 7 // Sauvegarde Session session = HibernateManager.getSession(); 9 Transaction transaction = session.begintransaction(); session.save(student); 11 transaction.commit(); 13 Collection courses = new HashSet(); 15 courses.add(coursea); student.setcourses(courses); 17 session.update(student); 1. Installer et configurer Hibernate sur votre compte pour le faire fonctionner avec une base Oracle. Complèter les programmes donnés en exemple : implanter la classe étudiant, la classe cours et l association entre étudiant et cours. 2. Que se passe-t-il lorsque deux programmes accèdent au même objet? 3. Comment gérer le fait qu un programme puisse enregistrer l état d un ou plusieurs objets les manipuler et les sauver pendant qu un autre programme aura fait la même choses sur un autre ensemble d objets dont certains sont commun avec le premier programme. Attention il ne s agit pas d un problème de concurrence habituel. 4. Faire de même pour la gestion de commandes dans certains produits peuvent être achétés par lots. Traduire des association 1 to 1, 1 to many, et many to many. Eric Leclercq Département IEM 6
Java 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é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étailProgrammation d application Bases de données avec Java
Plan du document Programmation d application Bases de données avec Java INT Problématique slide 3 Correspondance diagramme de classe slide 4 UML vers schéma relationnel Programmation BD avec JDBC slide
Plus en dé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é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étailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
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étailAccès aux bases de données
13 Accès aux bases de données Les bases de données fournissent un mécanisme de stockage persistant pour les données d application et dans bien des cas, elles sont essentielles au fonctionnement des applications.
Plus en détailJava et les bases de données
Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples
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étailApplication BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :
ntroduction 1/28 2/28 Anne-Cécile Caron Licence MAGE - Bases de Données 2013-2014 Application base de données Pour le développeur : Quel est l environnement? type de client (mode client serveur, intranet,...)
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é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étailTypes 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é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é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étailJDBC le langage Java XVI-1 JMF
JDBC Java Database Connectivity XVI-1 JDBC JDBC est une API Java (ensemble de classes et d'interfaces défini par SUN et les acteurs du domaine des BD) permettant d'accéder aux bases de données à l'aide
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étailConnexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC
Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC Sommaire 1. Objectifs et intérêts... 2 2. Intégrer le driver SQL Server dans SJSAS 9... 2 2.1. Télécharger
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étailPHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214
PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
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étailAlfstore 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étailMise en oeuvre d'une base de données mono-utilisateur avec SQLite
Mise en oeuvre d'une base de données mono-utilisateur avec SQLite Utilisation de SQLite dans le logiciel CASSIS Plan Le contexte scientifique avec le logiciel CASSIS La problématique avec Mysql La solution
Plus en détailInformation 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étailFormation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux
Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un
Plus en détailArchitecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués
Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr
Plus en détail633-2.2 Dialogue avec la base de données
633-2.2 Dialogue avec la base de données 3. Manipulation des données avec un langage hôte Cedric.Baudet@he-arc.ch 1 Références Filière Bachelor of Science en informatique de gestion Domaine Technologies
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailJDBC JDBC. Java DataBase Connectivity
Java DataBase Connectivity Philippe GENOUD UJF Février 2004 1 Introduction Offre une API unique d accès à toute BD conforme au standard SQL-92 Objectifs : Fournir un accès homogène aux SGBD une application
Plus en détailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
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étailFileMaker 10. Guide ODBC et JDBC
FileMaker 10 Guide ODBC et JDBC 2004-2009 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054, Etats-Unis FileMaker, le logo en forme de dossier,
Plus en détailExploitation de bases de données relationnelles et orientées objet IFT287
Université de Sherbrooke Département d informatique Exploitation de bases de données relationnelles et orientées objet IFT287 Notes complémentaires et synthétiques Marc Frappier, Ph.D. professeur Avertissement
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
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é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é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étailProgramme «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étailAuto-évaluation Aperçu de l architecture Java EE
Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
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étail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailInstitut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki
Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants
Plus en détailCATALOGUE FORMATIONS 2015. DOMAINE Bases de données
DOMAINE Bases de données Version 1.0 - Octobre 2014 1, 2, 3 juin 2015 1, 2, 3 octobre 2015 CATALOGUE Analyse et conception d une base de données Elaboration de fiches de collecte de données Techniques
Plus en détailMySQL avec Mac OS X. Quelques manipulations avec le terminal sont nécessaires si une version de MySQL est déjà lancée:
MySQL avec Mac OS X MySQL est un moteur de bases de données relationnelles (SGBDR système de gestion de bases de données relationnelles) basé sur le langage SQL. Il s'agit d'un langage normalisé de requêtes
Plus en détailLogiciel de gestion de caisse et d ardoises
6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Logiciel de gestion de caisse et d ardoises BOIRLEAUD Pierre-Jean MOLINS Nicolas REHFELD Vincent Table des matières
Plus en détailBases de données Page 1 de 11. Bases de données. Prof. : Dzenan Ridjanovic
Bases de données Page 1 de 11 1- Objectifs généraux Bases de données Prof. : Dzenan Ridjanovic acquérir les principes et concepts fondamentaux dans le domaine des bases de données; développer les connaissances
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étailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en dé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é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étailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailAPIs de table pour SQL Server
2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et de fin du
Plus en détailMise en œuvre des serveurs d application
Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés
Plus en dé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é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étailConstruire une base de donnée pour bibliothèque
Construire une base de donnée pour bibliothèque S'il y a bien un emploi typique pour un ordinateur, c'est celui de gérer une base de données. La première d'entre elles est bien sûr la base des fichiers
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en dé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étail1. Langage de programmation Java
1. Langage de programmation Java 1.1. Définitions Langage de 3e génération le plus utilisé actuellement Portabilité : exécutable sur tout types d'ordinateurs quel que soit le système d'exploitation (Windows,
Plus en détailPHP. PHP et bases de données
Accés aux bases de données Une des raisons du succès de PHP Support d un grand nombre de bases - MySQL - Oracle - PostgreSQL - SQLite - Microso> Access - DBM - IBM Informix -... Accés aux bases de données
Plus en détailORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010
ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle
Plus en détailParadox 9. Guide de l utilisateur jpdox Web Utilities
Paradox 9 Guide de l utilisateur jpdox Web Utilities Copyright 1999 COREL CORPORATION et COREL CORPORATION LIMITED. Tous droits réservés. Guide de l utilisateur des utilitaires Web jpdox Le contenu de
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é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étailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
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é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é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étailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailCQP Développeur Nouvelles Technologies (DNT)
ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,
Plus en détailJAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.
Analyste et développeur pendant plus de 10 ans, Thierry GROUSSARD s est ensuite orienté vers la formation et plus particulièrement dans le domaine du développement. Sa connaissance approfondie des besoins
Plus en détailLangage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2
Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD
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é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étailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en dé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étailBases de données avancées Introduction
Bases de données avancées Introduction Dan VODISLAV Université de Cergy-Pontoise Master Informatique M1 Cours BDA Plan Objectifs et contenu du cours Rappels BD relationnelles Bibliographie Cours BDA (UCP/M1)
Plus en détailBases de données cours 1
Bases de données cours 1 Introduction Catalin Dima Objectifs du cours Modèle relationnel et logique des bases de données. Langage SQL. Conception de bases de données. SQL et PHP. Cours essentiel pour votre
Plus en détailRefonte front-office / back-office - Architecture & Conception -
Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table
Plus en détailLes bases de données
Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive
Plus en détailCompiere. Installation et adaptation avec Hibernate. Travail de Bachelor. Thibaut Schorderet Septembre 2005
Information Systems Research Group Département d'informatique Université de Fribourg, Suisse http://diuf.unifr.ch/ Compiere Installation et adaptation avec Hibernate Travail de Bachelor Thibaut Schorderet
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailGestion de stock pour un magasin
Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailA.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW
A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW Groupe : 322 Exploitation des Banques de données 420-PK6-SL (1-2-1) Étape : 3 Professeur Nom: Marcel Aubin Courriel : maubin@cegep-st-laurent.qc.ca
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étailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailConnectivité aux bases de données Java (JDBC)
18 Connectivité aux bases de données Java (JDBC) Objectifs Comprendre les bases de données relationnelles. Utiliser les classes et les interfaces du package java.sql pour interroger, insérer et mettre
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailSécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin
Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse
Plus en détail