English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Types de pilotes JDBC

Qu'est-ce qu'un pilote JDBC ?

Les pilotes JDBC implémentent les interfaces définies dans l'API JDBC pour interagir avec le serveur de base de données.

Par exemple, en utilisant le pilote JDBC, vous pouvez ouvrir une connexion à la base de données et interagir avec elle en envoyant des commandes SQL ou des commandes de base de données en Java et en recevant les résultats.

JDK inclus Java.sql Le paquet contient diverses classes qui définissent son comportement, et son implémentation réelle est effectuée dans les pilotes tiers. Les fournisseurs tiers implémentent java.sql.Driver interface.

Type de pilote JDBC

Les implémentations des pilotes JDBC et JDBC varient en fonction des nombreux systèmes d'exploitation et des plateformes matérielles sur lesquels Java s'exécute. Sun a divisé les implémentations en quatre catégories, à savoir le type123et4que nous allons expliquer-

Type1:JDBC-Pilote pont ODBC

Dans le type1Dans le pilote, le pont JDBC est utilisé pour accéder aux pilotes ODBC installés sur chaque ordinateur client. Pour utiliser ODBC, vous devez configurer le nom de source de données (DSN) représentant la base de données cible sur le système.

Lorsque Java est apparu pour la première fois, c'était un pilote utile car la plupart des bases de données ne supportaient que l'accès ODBC, mais maintenant il est recommandé d'utiliser ce type de pilote uniquement à des fins expérimentales ou en l'absence d'autres méthodes de remplacement disponibles.

JDK 1.2JDBC inclus-Ponte ODBC est un bon exemple de ce pilote.

Type2:JDBC-API natif

:Java pur 2Dans le pilote, les appels API JDBC sont convertis en API natives spécifiques à la base de données en C / C ++ Appel API. Ces pilotes sont généralement fournis par les fournisseurs de bases de données et sont fournis avec JDBC-Ponte ODBC. Les pilotes spécifiques aux fournisseurs doivent être installés sur chaque ordinateur client.

Si vous changez de base de données, vous devez modifier l'API native, car elle est spécifique à la base de données et est maintenant obsolète, mais vous pouvez l'utiliser de la même manière que 2Le pilote peut accélérer car il élimine les coûts d'ODBC.

Le pilote Oracle Call Interface (OCI) est de type 2Exemple de pilote.

Type3:Java JDBC-Net

:Java pur 3Dans le pilote, une méthode en trois couches est utilisée pour accéder à la base de données. Le client JDBC utilise un connecteur réseau standard pour communiquer avec le serveur d'application intermédiaire. Ensuite, les informations de connecteur sont converties par le serveur d'application intermédiaire en format de appel requis par le SGBD et transmises au serveur de base de données.

Ce pilote est très flexible, car il n'a pas besoin d'installer de code sur le client, et un seul pilote peut en fait fournir un accès à plusieurs bases de données.

Vous pouvez considérer le serveur d'application comme un proxy JDBC, ce qui signifie qu'il appelle l'application client. Par conséquent, vous avez besoin de certaines connaissances sur la configuration du serveur d'application pour utiliser efficacement ce type de pilote.

Votre serveur d'application peut utiliser12、4ou

Type4Les pilotes de type avec la base de données communiquent, et comprendre les différences subtiles sera utile.

:Java pur 4Dans le pilote

Ce pilote est très flexible, vous n'avez pas besoin d'installer de logiciel spécial sur le client ou le serveur. De plus, ces pilotes peuvent être téléchargés dynamiquement.

MySQL Connector/Le pilote J est de type 4En raison de la propriété propriétaire de son protocole réseau, les fournisseurs de bases de données fournissent généralement4Pilote de type

Dois-je utiliser quel pilote ?

Pour accéder à un type de base de données spécifique, par exemple Oracle, Sybase ou IBM, le type de pilote préféré4.

Si votre application Java accède simultanément à plusieurs types de bases de données, le type3est le pilote préféré.

Votre base de données ne peut pas encore utiliser3ou4Dans le cas du pilote de type2Le pilote est très utile.

Type1Le pilote n'est pas considéré comme un pilote de niveau déploiement, il est généralement utilisé à des fins de développement et de test.