2. Pilotes JDBC
Driver > DriverManager
Taxinomie des pilotes
Les pilotes JDBC sont répertoriés en 4 types :
Type |
Caractéristiques |
type 1
|
Technologie de pont
Exemple typique : JdbcOdbcDriver livré avec le JDK
|
type 2
|
Pilotes d’API C/C++ natifs
Nécessairement installés sur les postes clients.
|
type 3
|
Pilotes Java s’appuyant sur une couche réseaux
Requêtes interprétées au niveau du serveur BDD
|
type 4
|
100% Java - pure java
Communication en direct à travers un réseau avec le gestionnaire de base de données.
|
Chargement de pilotes
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch(ClassNotFoundException e) {
System.err.println("JDBC driver not found.");
System.exit(0);
}
Chargement dynamique de classes :
Pont ODBC (Type 1)
Pilote natif Oracle (Type 4)
Dans cet exemple, les classes, implantant l'interface Driver, sont chargées dynamiquement.
Il s'agit de la méthode la plus élégante. Lors d’un chargement dynamique, un constructeur statique est appelé.
C’est à travers celui-ci que s’effectue le référencement des pilotes auprès du DriverManager.
Une autre méthode consisterait à invoquer un Driver et de l'enregistrer auprès du DriverManager :
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Chargement d'un pilote : méthode statique
Maintenant que nous avons vu comment charger un pilote de base de données, voyons comment établir une connexion.
|