что JDBC jar использовать с oracle 11g & jdk 1.6 и как подключиться к самой БД

Я пишу метод доступа к базе данных на Java. База данных находится в Oracle 11g, о которой я абсолютно не знаком, и у меня есть JDK 1.6.

  1. будет ojdbc4.jar do для моей программы? Нам не разрешено подключаться к Интернету в офисе, и я не могу загрузить ojdbc6.jar, который я прочитал, более совместим с моей настройкой.
  2. какие строки я должен поместить в класс.forName (строковый драйвер) и DriverManager.getConnection (строка connectionURL)? Я не знаю строка драйвера и URL-адрес подключения, поскольку они (естественно) сильно отличаются от тех, что для MS SQL Server.

2 ответов


  1. Oracle связывает банку с установкой клиента или сервера Oracle и может быть найден в $ORACLE_HOME/jdbc/lib/ojdbc6.jar. Я всегда этим пользуюсь.

  2. имя класса драйвера oracle.jdbc.OracleDriver и URL-адрес jdbc:oracle:thin:@//[HOST][:PORT]/SERVICE.

вот пример (взято из здесь):

import java.sql.*;
class Conn {
  public static void main (String[] args) throws Exception
  {
   Class.forName ("oracle.jdbc.OracleDriver");

   Connection conn = DriverManager.getConnection
     ("jdbc:oracle:thin:@//localhost:1521/orcl", "scott", "tiger");
                        // @//machineName:port/SID,   userid,  password
   try {
     Statement stmt = conn.createStatement();
     try {
       ResultSet rset = stmt.executeQuery("select BANNER from SYS.V_$VERSION");
       try {
         while (rset.next())
           System.out.println (rset.getString(1));   // Print col 1
       } 
       finally {
          try { rset.close(); } catch (Exception ignore) {}
       }
     } 
     finally {
       try { stmt.close(); } catch (Exception ignore) {}
     }
   } 
   finally {
     try { conn.close(); } catch (Exception ignore) {}
   }
  }
}

официальный файл JAR в сочетании с JDK 1.6 является ojdbc6.jar. Но!--2--> должен работать для большинства приложений.

типичные строки подключения:

jdbc:oracle:thin:user/xxxx@server:port:SID
jdbc:oracle:thin:user/xxxx@//server:port/XE
jdbc:oracle:thin:user/xxxx@:SID