Accueil
Java Standard Edition
Java EE 5
Visual Basic .Net 2005
Visual C++ .Net 2005
Visual C# .Net 2005
Cours ASP .Net 2.0
Postgresql
Linux
Visual Studio 2008
ASP 3.0 Classique
Cours Javascript - DOM - DHTML
Cours Ajax
VBA
Assembleur
Perl
Membres
L'auteur du site
Nouveautés sur le site
Contacts
Plan du site
Exécution d'un programme
Les archives Jar
Les classes abstraites
Les interfaces
Les tableaux
La généricité
Les énumérations
Les classes internes
Classes anonymes et internes locales
Les threads: généralités
Les threads(2): synchronisation
E/S(1):InputStream et OutputStream
E/S(2):FileInputStream et FileOutputStream
E/S(3):Reader et Writer
E/S(4):FilterInputStream et FilterOutputStream
E/S(5):Les filtres d'octets: PrintStream
E/S(6):Les filtres d'octets: DataInputStream et DataOutputStream
E/S(7):Les filtres d'octets: BufferedInputStream et BufferedOutputStream
E/S(8):Flux de caractères: PrintWriter
E/S(9):Flux de caractères: FilterReader et FilterWriter
E/S(10):Flux de caractères: InputStreamReader, OutputStreamWriter, StreamDecoder, StreamEncoder
E/S(11):Flux de caractères: BufferedReader et BufferedWriter
E/S(12):Flux de caractères: FileReader et FileWriter
La classe String (java.lang)
Les collections: L'interface Collection(java.lang)
Les collections(2): L'interface List(java.util)
Les collections(3): AbstractCollection(java.util)
Les collections(4): AbstractList(java.util)
Les collections(5): Vector(java.util)
Les collections(6): L'interface Map(java.util)
Les collections(7): AbstractMap(java.util)
Les collections(8): HashMap(java.util)
La bibliothèque Swing en Java
Les bases de données en Java
JDBC ( Java Database Connectivity )
Les interfaces graphiques
Les fichiers de configuration en Java
INSTALLATION JAVA EE 5, JRE 6, ECLIPSE, TOMCAT, ETC SOUS LINUX
INSTALLATION JAVA EE 5, JRE 6, ECLIPSE, TOMCAT, ETC SOUS WINDOWS
Les applications Web en java
Les filtres Java (javax.servlet.Filter)
I Généralités
I.1 Le formulaire principal
I.2 Les objets créés par Visual
I.3 Les variables références
I.4 Le garbage collector
II Créer évènements
II.1 Rappel évènements
II.2 Procédure à suivre
II.2.1 Créer son EventArgs
II.2.2 Créer EmetEvent
II.2.3 Déclarations autres
I Généralités
I.1 Applications winforms
I.2 Applications MFC
I.3 Objets managés ou pas
I.4 Objets non managés
I.5 Objets managés - handle
I.6 Le top-level ^
II Créer évènements
II.1 Rappel évènements
II.2 Procédure à suivre
II.2.1 Créer son EventArgs
II.2.2 Créer EmetEvent
II.2.3 Déclarations autres
I Généralités
I.1 Puissant et Accessible
I.2 Créer ses classes
II Créer évènements
II.1 Rappel évènements
II.2 Procédure à suivre
III Les services Windows
IV Le .net remoting
V Communication Tcp avec TcpClient et TcpListener
II.2.1 Créer son EventArgs
II.2.2 Créer EmetEvent
II.2.3 Déclarations autres
I Généralités
I.1 Un EDI formidable
I.2 Inclure C# ou VB
I.3 L'objet Response
I.4 Les évènements
II ASP .net et les bdd
II.1 Essayer plusieurs fois la requête
I 2.1 Fichiers distincts
I.2.2 Avec la balise script
I.2.3 Inclure réellement
I.2.4 Avec Response.Write()
I.3.1 La méthode Response.Redirect()
I.4.1 Résoudre problème post
Installation Postgre Linux
Cours Postgresql
Le Shell Unix( Linux, Ubuntu)
Les scripts C-Shell
Programmation système Unix
Reseau Linux
Les iptables
Windows Presentation Foundation(WPF)
Le Framework 3.0
Windows Workflow Foundation(WF)
ASP 3.0 Classique
Cours Javascript - DOM - DHTML
Chat Ajax
VBA Excel 2003
Assembleur
Perl
Inscription
Liste membres
Livre d'or
Forum
Accueil
>
Java Standard Edition
>
JDBC ( Java Database Connectivity )
____________________________________________________________________________________________________
Connexion
JDBC ( Java Database Connectivity )
19/12/2007
I)Généralités
Les SGBD( Systèmes de Gestion de Base de Donnée) savent parfaitement traiter des masses importantes de données. Alors autant leur confier cette tâche, car Java n’est pas aussi compétent pour ce genre de travail. Cest pourquoi Java possède une interface qui permet d’avoir accès à des programmes extérieurs. Cette interface s’appelle JDBC( Java DataBase Connectivity) est permet donc de communiquer avec une base de données. Elle se présente sous la forme d’une bibliothèque Java. JDBC est une interface entre notre programme Java et la base de données.
b) Qu’est-ce qu’une interface ?
L’interface JDBC permet aux programmes Java de parler une langue commune qui est la « langue » JDBC. Cette langue est connue des pilotes. Java et le pilote parleront donc la même langue, ils vont donc se comprendre. Et le pilote va traduire cette langue JDBC en la langue spécifique à la base de données en question. Pourquoi Java ne parle t’il pas directement la langue de la base de données ? Parce que, première raison, seul le distributeur de la base de données connaît le secret de sa base de données. Donc seul lui peut « parler » à sa base de données. C’est pour cette raison que c’est lui qui fournit le pilote. Deuxième raison : Java, grâce à JDBC, parle une langue standardisée, qui permet de pouvoir changer de base de données, sans changer le programme Java, juste en changeant le pilote.
En résumé : java parle la langue JDBC, le SGBD parle la langue SGBD, et le pilote est un traducteur de la langue JDBC en langue SGBD( et inversement).
II) Le pilote
Il est nécessaire de posséder, en outre, un pilote qui va interpréter les instructions JDBC pour la base. Si le SGBD est MySQL, on prendra un pilote JDBC pour MySQL.
Attention, le terme « pilote » est également employé pour désigner l’interface JDBC elle-même. Ainsi on appelera pilote JDBC aussi ce que vous utiliserez dans votre programme Java pour pouvoir communiquer avec le (vrai) pilote de la base de données.
b) Le pont JDBC-ODBC
Cependant, il n’existe pas toujours de pilote JDBC pour tous les SGBD. Notamment les SGBD Microsoft utilisent l’interface ODBC. Pour résoudre ce problème, Java possède ce qui est appelé le pont JDBC-ODBC. Il permet de se servir des pilotes ODBC( mais aussi des pilotes JDBC).
Rappelons que c’est le constructeur du SGBD qui distribue les pilotes pour sa base de données. Par exemple MySQL fournit un pilote JDBC pour MySQL. Logique que ce soit le constructeur du SGBD, car un pilote effectue une traduction pour cette base de données : il faut donc connaître parfaitement la base de données pour pouvoir écrire un tel pilote ; par conséquent, c’est bien le rôle du distributeur de la base de données que d’écrire un tel pilote. Microsoft fournit donc les pilotes pour les bases de données Microsoft. Or Microsoft fournit des pilotes ODBC( qui utilisent l’interface ODBC, qui est une autre interface). C’est pour cette raison que Java possède le pont JDBC-ODBC, qui permet d’utiliser les pilotes ODBC des distributeurs, tout en continuant d’utiliser l’API JDBC(Application Programming Interface). Votre programme Java utilisant l'API JDBC est traduit en OBDC, il y a donc bien un pont. Au contraire des API .net qui sont spécifiques à l'interface( on a une API spécifique pour ODBC, OleDb, etc). Avec le système de pont, on n'est pas obligé de changer le code concernant la base de données, comme en .net.
Remarque: Le pont (appelé aussi pilote) JDBC-ODBC permet donc d’utiliser les pilotes JDBC, et aussi les pilotes ODBC.