Outils pour utilisateurs

Outils du site


oracle_tester_une_connexion_jdbc_a_la_base_de_donnees

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 :

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) {
      }
    }
  }
}

Compilons maintenant le code JAVA :

# 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

Puis, on peut faire une test de connexion :

# 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
oracle_tester_une_connexion_jdbc_a_la_base_de_donnees.txt · Dernière modification: 25/02/2011 08:29 (modification externe)