2013-04-02 5 views
-1

ниже - моя простая программа JDBC Oracle Connectivity. Пожалуйста, посмотрите и скажите, почему я могу получить ошибку драйвера, не загружаемую. Я поместил odbc14.jar в библиотеки.Ошибка драйвера JDBC

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/ 

package databaseconnect; 

/** 
* 
* @author compaq 
*/ 
import java.sql.*; 

public class Education1 { 

    public static void main(String[] args) { 

     try{ 
      Class.forName("oracle:jdbc:driver:OracleDriver"); 
     }catch(Exception e) { 
     System.out.println("Failed to load Oracle driver."); 
     } 
try{ 
      Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","system"); 
      Statement stmt=con.createStatement(); 
      stmt.executeUpdate("insert into Education(name,rollno) VALUES ('alankrit',1000)"); 
      System.out.println("Data inserted"); 
      con.close(); 


    } catch(Exception e){ 
    //  System.out.println(e); 
    } 

    } 

} 
+1

Даже не видя этого, я уверен, что ваш CLASSPATH ошибочен. Распечатайте его, и мы расскажем вам, что это должно быть. – KevinDTimm

+2

В классе.forName(), используйте. (Dot) не двоеточие (:). Так что используйте Class.forName ("oracle.jdbc.driver.OracleDriver") –

+0

Можете ли вы поделиться об ошибкой/исключением, которое вы получаете? – Jabir

ответ

0

Необходимо передать название класса, как указано ниже, заменить: на.

Class.forName("oracle.jdbc.driver.OracleDriver"); 

Класс реализации драйвера с полным именем пакета в формате String.

Так что Reflection API может загрузить этот класс во время выполнения

+2

Аргумент 'Class.forName' является строкой, а не классом. – mthmulders

+0

ОК извините. . , главным аргументом был класс с полным путем с именем пакета. Так что отражение api может загрузить этот класс во время выполнения. –

+0

Hi..changing ':' to '.' работал в классе.forName..thanks для помощи всем. Также может у вас рассказать мне, зачем нам нужны банки, а какая последняя для JDK5? – user2236029

0

вместо

Class.forName("oracle:jdbc:driver:OracleDriver"); 

использования

Class.forName("oracle.jdbc.OracleDriver"); 

и убедитесь, что у вас есть odbc14.jar файл в пути к классам.

+1

В этом вопросе ничего не говорится о том, что это веб-приложение. Это простое приложение на самом деле, и, таким образом, его размещение в WEB-INF не будет работать. BTW Я не ответил на ваш ответ ... – maba

+0

@maba спасибо за указание на ошибку в коде. – Bhushan

Смежные вопросы