Outils pour utilisateurs

Outils du site


oracle_tester_une_connexion_jdbc_a_la_base_de_donnees

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

oracle_tester_une_connexion_jdbc_a_la_base_de_donnees [25/02/2011 08:29] (Version actuelle)
Ligne 1: Ligne 1:
 +{{tag>​oracle tester JDBC}}
 +====== Oracle - Tester une connexion JDBC à la base de données ======
 +
 +Commençons par copier le code du programme JAVA dans le fichier CheckJDBC.java :<code java>​import java.sql.Connection;​
 +import java.sql.DriverManager;​
 +import java.sql.ResultSet;​
 +import java.sql.Statement;​
 +import oracle.jdbc.*;​
 +
 +public class CheckJDBC {
 +  public static Connection getConnection(String url, String username, String password) throws Exception {
 +    String driver = "​oracle.jdbc.driver.OracleDriver";​
 +    Class.forName(driver);​
 +    Connection conn = DriverManager.getConnection(url,​ username, password);
 +    return conn;
 +  }
 +
 +  public static boolean isValidConnection(Connection conn) throws Exception {
 +
 +    if (conn == null) {
 +      return false;
 +    }
 +
 +    if (conn.isClosed()) {
 +      return false;
 +    }
 +    return testConnection(conn,​ "​select 1 from dual"​);​
 +  }
 +
 +  public static boolean testConnection(Connection conn, String query) {
 +
 +    ResultSet rs = null;
 +    Statement stmt = null;
 +    try {
 +      stmt = conn.createStatement();​
 +      if (stmt == null) {
 +        return false;
 +      }
 +
 +      rs = stmt.executeQuery(query);​
 +      if (rs == null) {
 +        return false;
 +      }
 +
 +      if (rs.next()) {
 +        return true;
 +      }
 +      return false;
 +
 +    } catch (Exception e) {
 +      return false;
 +    } finally {
 +      try {
 +        rs.close();
 +        stmt.close();​
 +      } catch (Exception e) {
 +      }
 +    }
 +  }
 +
 +  public static void main(String[] args) {
 +    Connection conn = null;
 +    System.out.printf("​Connection on %s with username %s and password %s\n", args[0], args[1], args[2]);
 +    try {
 +      conn = getConnection(args[0],​ args[1], args[2]);
 +      System.out.println("​conn="​ + conn);
 +      System.out.println("​valid connection = " + isValidConnection(conn));​
 +    } catch (Exception e) {
 +      e.printStackTrace();​
 +      System.exit(1);​
 +    } finally {
 +      try {
 +        conn.close();​
 +      } catch (Exception e) {
 +      }
 +    }
 +  }
 +}</​code>​
 +
 +Compilons maintenant le code JAVA :<code bash># Install paquet dev java
 +yum install java-1.6.0-sun-devel.x86_64
 +
 +export ORACLE_HOME=/​usr/​oracle/​product/​10.2.0/​db_1
 +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:​$ORACLE_HOME/​lib
 +export CLASSPATH=.:​$ORACLE_HOME/​jdbc/​lib/​ojdbc14.jar
 +
 +mkdir ~/JDBC
 +cd ~/JDBC
 +# Copier le fichier CheckJDBC.java dans le dossier
 +javac -classpath $CLASSPATH CheckJDBCInstallation_Oracle.java</​code>​
 +
 +Puis, on peut faire une test de connexion :<code bash># Tentative de connection
 +$ java -classpath $CLASSPATH CheckJDBCInstallation_Oracle jdbc:​oracle:​thin:​@<​ip_addr>:​1521:<​oracle_sid>​ <​username>​ <​password>​
 +Connection on jdbc:​oracle:​thin:​@<​ip_addr>:​1521:<​oracle_sid>​ with username <​username>​ and password <​password>​
 +conn=oracle.jdbc.driver.T4CConnection@65b4fad5
 +valid connection = true</​code>​
  
oracle_tester_une_connexion_jdbc_a_la_base_de_donnees.txt · Dernière modification: 25/02/2011 08:29 (modification externe)