Connexion à la base de données avec JDBC
Connexion à la base de données
L'API (Application Programming Interface) JDBC, c'est-à-dire la bibliothèque de classes JDBC, se charge de trois étapes indispensables à la connexion à une base de données :
- la création d'une connexion à la base
- l'envoi d'instructions SQL
- l'exploitation des résultats provenant de la base
Le package java.sql.*
Tous les objets et les méthodes relatifs aux bases de données sont présents dans le package java.sql, il est donc indispensable d'importer java.sql.* dans tout programme se servant de la technologie JDBC.
Le package java.sql contient les éléments suivants :
Classes | Interfaces | Exceptions |
---|---|---|
Date
DriverManager DriverPropertyInfo Time Timestamp Types |
Array
Blob CallableStatement Clob Connection DatabaseMetaData Driver PreparedStatement Ref ResultSet ResultSetMetaData SQLData SQLInput SQLOutput Statement Struct |
BatchUpdateException
DataTruncation SQLException SQLWarning |
Connexion à la base de données
Pour se connecter à une base de données il est essentiel de charger dans un premier temps le pilote de la base de données à laquelle on désire se connecter grâce à un appel au DriverManager (gestionnaire de pilotes) :
Class.forName("nom.de.la.classe");
Cette instruction charge le pilote et crée une instance de cette classe. Pour se connecter à une base de données déclarée dans l'administrateur ODBC par exemple, il faut charger le pilote JDBC-ODBC (appelé pont JDBC-ODBC) :
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Certains compilateurs refusant cette notation, il faut parfois appeler le driver de la façon suivante :
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
Pour se connecter à une base de données particulière, il s'agit ensuite de créer une instance de la classe Connection grâce à la méthode getConnection de l'objet DriverManager en indiquant la base de données à charger à l'aide de son URL
String url = "jdbc:odbc:base_de_donnees"; Connection con = DriverManager.getConnection(url);Le nom de la base de données (ici base_de_donnees) étant celle déclarée dans le panneau de configuration ODBC, c'est-à-dire le nom du DSN. La syntaxe de l'URL peut varier légèrement selon le type de la base de données. Il s'agit généralement d'une adresse de la forme :
jdbc:sousprotocole:nom