3. Connexion

DriverManager > Connection

Database URL

La classe DriverManager est responsable de la communication avec les pilotes chargés. Comme nous l'avons vu, les pilotes chargés sont enregistrés auprès du DriverManager. Lors de l'établissement d'une connexion à une base de données, il est nécessaire de préciser quel pilote utilisé ainsi que divers paramètres (utilisateur, mot de passe, etc.).
 
Ces informations sont définies dans une chaîne de caractères que l'on appelle Database URL :
 
jdbc:sous-protocole:sous-nom
 
  • sous-protocole : identifie le pilote adéquat
  • sous-nom : indique toutes les précisions nécessaires à la connexion
     
    String url = "jdbc:oracle:thin:@" + 
                 "(DESCRIPTION=(ADDRESS=(HOST=10.31.68.110)" +
                 "(PROTOCOL=tcp)(PORT=1521))" +
                 "(CONNECT_DATA=(SID=ORCL)))";
    
    Exemple Oracle (thin method)
     
    String dataSourceName = "biblio";
    String url = "jdbc:odbc:" + dataSourceName;
    
    Exemple ODBC
     

    Établissement de la connexion

    La méthode getConnection() de la classe DriverManager permet d’établir la connexion décrite par l’URL. Les paramètres usr et pwd (user name & password) sont optionnels.
     
    String usr = "tyler", pwd = "durdon";
    try {
       Connection cnt = DriverManager.getConnection(url, usr, pwd);
    } catch(SQLException e) {
       System.err.println("SQL State : " + e.getSQLState());
       System.err.println(e.getMessage());
    }
    
    Connexion à une base de données
     
    Profitons de cet exemple pour voir que l'exeption SQLException dispose de méthodes getSQLState() et getMessage(). La première renvoie un code d'erreur spécifique à la base de données solicitée et la seconde rev=nvoie une chaîne de caractère qui résume l'erreur qui vient de se produire.
    La connexion est maintenant établie, voyons comment interroger la base de données.
     
     

    JDBC™ 2.1 API
    Aurélien DELEUSIÈRE - Ingénieurs 2000 - IR98
    adeleusiere@wanadoo.fr