Master 1 SIGLIS Intégration des données dans l’entreprise Stéphane Tallard JDBC: Java Database Connectivity Master 1 SIGLIS1JDBC.

Slides:



Advertisements
Présentations similaires
Réaliser en Java un programme client d’une Base de Données
Advertisements

Introduction Fonctionnement PluginsConfigurationLes données Le framework MAG Framework de conception de canaux complexes Implémente IChannel Possède son.
Introspection et Réflexion Manipulation dynamique de code Java.
Au programme du jour …. Ce que vous navez pas encore vu Constantes et variables de classe Main et Tests Utilisation de lAPI Existence des packages Existence.
Au programme du jour …. Introduction à lhéritage Un concept important de la programmation objet Livraison de code Organisation des répertoires et packages.
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
(Classes prédéfinies – API Java)
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
Les Bases de données et le Web
LICENCE MIAGE Introduction Programmation Orientée Objet JAVA philippe
JAV - TD 6 Structures de données JAVA
Stéphane Frenot - Département Télécommunication - SID - II - Jdbc 280 JDBC Java Databases Connectivity.
PHP mySQL Extension php_mysql. Connexion à une base de données Établir une connexion mysql_connect(string server, string username, string password) –permet.
UV JDBC Module Java Expert
TP 3-4 BD21.
Programmation dapplications Bases de données avec Java INT.

JSP Java Server Pages Cours JSP.
Servlet JAVA.
JDBC: manipuler une base de données en Java IFT6800 – E 2007 Jian-Yun Nie.
Connexion base de données
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Développement d’applications web
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
HIBERNATE Framework de mapping objet-relationnel
JavaBeans Réalise par: EL KHADRAOUY TARIK AOUTIL SAFOWAN.
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
JDBC Java Data Base Connectivity. Java DataBase Connectivity (JDBC) Cette API est développée par Sun en collaboration avec les grands éditeurs de SGBD.
1 Développement des Applications des Bases de Données Chapitre 6.
JDBC ou comment manipuler une base de données en Java ?
Les instructions PHP pour l'accès à une base de données MySql
Mapping Objet-Relationnel
1 Objectifs de ce cours (I21) Cours JAVA (I21) -Licence 1 Semestre 2 / Y.Laborde Résumé du cours précédent.
L’utilisation des bases de données
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
1 Développement des Applications des Bases de Données Chapitre 6.
1 CSI 2532 Lab5 Installation de JDBC Février 13, 2012.
COURS DE PROGRAMMATION ORIENTEE OBJET :
1 CSI 2532 Lab6 Application Web et DB Février 27, 2012.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Développement des Applications des Bases de Données Chapitre 6.
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
1212 Entrée et sortie de fichiers Objectifs À la fin de ce cours, vous serez capables de : • Lire à partir de la console • Écrire sur la console.
‘‘Open Data base Connectivity‘‘
Juin 2006~ Brigitte Groléas ~ 1 J530 (JBD) Java : Base de Données.
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 6 – Exceptions.
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Masters IIGLI et ILGII – Intranet internet extranet – – Claude Montacié 1 Cours n° 10 Accès distant aux bases de données.
Tutorat en bio-informatique
Les sockets.
 Formulaires HTML : traiter les entrées utilisateur
Ingénierie des réseaux - Chapitre 2 bis Les sockets en Java
Master 1 SIGLIS Systèmes d’Information pour l’entreprise – Java RMI Stéphane Tallard Mise en œuvre de l’exemple Bonjour RMI Master 1 SIGLIS1 Intégration.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
JDBC - p. 1 JDBC. JDBC - p. 2 Objectifs Fournir un accès homogène aux SGBDR Abstraction des SGBDR cibles Requêtes SQL Simple à mettre en oeuvre Core API.
02/06/2015© Robert Godin. Tous droits réservés.1 5 Interface entre SQL et un programme n SQL incomplet n Défaut d'impédance (impedance mismatch) – modèle.
Interface Java – Oracle : JDBC. I-2 JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres.
JDBC Présenter par: Mouctar Souleymane Bah Enseignent: Dr Amer Draâ
JDBC (Complément de cours) IFT 3030
Master 1 SIGLIS Java Lecteur Stéphane Tallard Correction du TD Chapitre 3.
JDBC - Y. Bekkers1 Java et les SGBDR Librairies JDBC Yves Bekkers.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
Transcription de la présentation:

Master 1 SIGLIS Intégration des données dans l’entreprise Stéphane Tallard JDBC: Java Database Connectivity Master 1 SIGLIS1JDBC

2 Master 1 SIGLIS JDBC : qu’est ce que c’est ? JDBC: Java Database Connectivity JDBC est une brique de base de l’environnement Java Quand on télécharge Java on télécharge JDBC JDBC fournit le moyen de se connecter à n’importe quelle source de données depuis Java (à condition qu’un driver JDBC ait été fourni)

JDBC 3 Master 1 SIGLIS ODBC / architecture n-tiers JDBC

4 Master 1 SIGLIS JDBC : Qu’est ce que c’est ? (2) JDBC est une spécification Oracle : summary.html summary.html La spécification contient la description d’un ensemble de classes avec leurs méthodes et leur comportement

JDBC 5 Master 1 SIGLIS JDBC JDBC est une API qui définit des ordres standards Les constructeurs de base de données fournissent des drivers qui implémentent ces ordres standards. L'architecture est non propriétaire : elle est adoptée par presque tous les constructeurs du marché Si on change de base de données: seules les requêtes SQL doivent être vérifiées si on change de base de données, il suffit de changer le driver de la base de données Ne nécessite aucune configuration particulière

JDBC 6 Master 1 SIGLIS Que fait un driver JDBC (1) ? L'application Java s'adresse au driver jdbc en utilisant l'API JDBC Le driver traduit les ordres JDBC en ordres compréhensibles par le SGBD Le driver jdbc est une bibliothèque Java (jar) Application JAVA API JDBC Driver JDBC SGBD

JDBC 7 Master 1 SIGLIS Dans le cas d’une requête SQL, le driver s’occupe : de transporter la requête SQL au SGBD de la faire exécuter de transporter le résultat de la requête Que fait un driver JDBC (2) ? Application JAVA API JDBC Driver JDBC SGBD

JDBC 8 Master 1 SIGLIS L’API JDBC API: Application Programming Interface Interface de Programmation d’application Un ensemble de classes avec leurs méthodes et la description de leur comportement Connection Statement ResultSet SGBD Connexion Envoyer des ordres au SGBD: Requêtes SQL, Procédures stockées Naviguer dans le résultat d'une requête Modifier / créer des données

JDBC 9 Master 1 SIGLIS Connexion au SGBD La connexion au SGBD est le préalable indispensable Chargement du pilote JDBC Class.forName("nom.de.la.classe"); Connection connexion = DriverManager.getConnection(jdbc:odbc:base_de_donnees); Chargement dynamique de la classe principale du driver: « Nom.de.la.classe » est fourni par le constructeur du driver le driver est un jar qui doit être trouvé sur le classpath le nom de cette classe est défini par le constructeur du driver Dépend de la configuration système et du SGBD utilisé NB: classpath Défini dans les arguments au moment où on lance un programme Java Le classpath contient une liste de répertoire ou Java doit chercher les classes que l’on instancie

JDBC 10 Master 1 SIGLIS Exemple: avec le SGBD mySQL try { Class.forName ( "org.gjt.mm.mysql.Driver" ); // dépend du driver MySql utilisé System.out.println ( "MySQL Driver Found" ); } catch ( java.lang.ClassNotFoundException e ) { System.out.println("MySQL JDBC Driver not found... "); throw ( e ); } String host = “??????” ; // Dépend de votre configuration String database = “??????” ; // dépend de votre base String url = ""; try { url = "jdbc:mysql://" + host + "/" + database; Connection con = DriverManager.getConnection(url); System.out.println("Connection established to " + url + "..."); } catch ( java.sql.SQLException e ) { System.out.println("Connection couldn't be established to " + url); throw ( e ); }

JDBC 11 Master 1 SIGLIS L’interface Connection L'objet Connection représente une session avec un SGBD Principales méthodes : // Fermer la connexion public void close() throws SQLException // renvoie vraie si la connexion est fermée public boolean isClosed() throws SQLException // Commit public void commit() throws SQLException // Rollback public void rollback() throws SQLException // préparer une requête Public Statement createStatement()

JDBC 12 Master 1 SIGLIS Interface Statement Permet d’envoyer des requêtes SQL Principales méthodes // Exécute la requête SQL et renvoie vrai si la requête a été exécutée // avec succès public boolean executeQuery(String sql) throws SQLException ; // Renvoie les résultats de la requête précédente (si il y en a) public ResultSet getResultSet() throws SQLException ; // Execute un ordre SQL qui ne renvoie rien (INSERT, DELETE,UPDATE) public int executeUpdate(String sql) throws SQLException

JDBC 13 Master 1 SIGLIS Interface ResultSet L'interface Resultset permet de naviguer sur le résultat d'une requête SQL public void update (int columnIndex, value)throws SQLException ; Public void update (String colummName, value)throws SQLException ; public void updateRow() throws SQLException; public void deleteRow() throws SQLException public get (int columnIndex)throws SQLException ; public get (String colummName)throws SQLException ; Lecture du résultat d’une requête SELECT public boolean first()throws SQLException ; public boolean last()throws SQLException ; public boolean absolute(int row) throws SQLException ; public boolean previous()throws SQLException ; public boolean isLast() throws SQLException; public boolean next() throws SQLException ; Navigation dans le résultat d’une requête SELECT Modification/Insertion/Destruction

JDBC 14 Master 1 SIGLIS Un programme JDBC de lecture lançant une requête SQL SELECT Etape 1: Connexion  On obtient un objet de la classe Connexion Etape 2: Envoyer une requête SQL A partir de l’objet Connexion, obtenir un objet Statement en utilisant la méthode createStatement sur l’objet Statement, lancer une requête SQL en utilisant la méthode executeQuery Etape 3: Lire les résultats sur l’objet Statement, obtenir le résultat de la requête  on obtient un objet ResultSet Naviguer sur l’objet ResultSet en utilisant les méthodes first, last, previous, absolute, isLast, next Lire les données en utilisant get( numéro de colonne) ou get (« nom de colonne »)

JDBC 15 Master 1 SIGLIS Exercice Que fait le programme CreateCoffees.java ? Que fait le programme SQLStatement.java Que fait le programme InsertRows.java ? Reprendre le slide précédent pour décrire un programme JDBC qui fait une modification dans une table Donner deux options possibles.

JDBC 16 Master 1 SIGLIS Correspondance entre SQL et les types Java

JDBC 17 Master 1 SIGLIS Exercice Modifier l’implémentation de ArticleMetier : Les méthodes travaillent en base de données et non plus en mémoire.