Java Oracle数据库连接

Java Oracle数据库连接,java,sql,oracle,jdbc,Java,Sql,Oracle,Jdbc,这是我得到的一个例外: D:\Programming\Java\bin>JAVAC Demo.java D:\Programming\Java\bin>java Demo Error: Could not find or load main class Demo D:\Programming\Java\bin>java -cp . Demo Exception Born java.lang.ClassNotFoundException: oracle.jdbc.drive

这是我得到的一个例外:

D:\Programming\Java\bin>JAVAC Demo.java

D:\Programming\Java\bin>java Demo
Error: Could not find or load main class Demo

D:\Programming\Java\bin>java -cp . Demo
 Exception Born java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDrive
r
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:188)
        at Demo.main(Demo.java:14)
这是我的代码:

    // Oracle Connection Program

import java.io.*;
import java.sql.*;

public class Demo 
{
    public static void main(String[] args)throws IOException, SQLException
    {
        String inq = " insert into login values(10,'shri')" ;

        try
        {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            Connection con = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:XE","system","admin");
            Statement stmt = con.createStatement();
            stmt.execute(inq);
            con.close();
        }

        catch(Exception e)
        {
            System.out.println(" Exception Born "+e);
            e.printStackTrace();
        }
    }
}
我已将类路径设置为oracle文件夹中的odbc文件。。还将它们复制到javabin文件夹中。我已经使用环境变量和cmd设置了类路径。但还是一样的错误。
我甚至使用sql连接到数据库。表已创建。有什么问题?有什么提示吗?

启动Java应用程序时,需要指定类路径,否则它将无法找到类(如Oracle JDBC驱动程序)

您需要下载Oracle JDBC驱动程序并将其放在系统中的某个位置(例如
C:\oraclejdbc\ojdbc7.jar
),然后使用以下命令运行Java:

java -cp .;C:\oraclejdbc\ojdbc7.jar Demo
-cp
指定Java应在何处查找类:

  • 表示当前目录
  • C:\oraclejdbc\ojdbc7.jar
    表示:在这个jar文件中

另见。该文档还提到了
CLASSPATH
环境变量,但一般来说,您最好避开它;。;在课程的最后,路径对我很有用。
例如C:\Oracle\product\10.1.0\Client\u 1\jdbc\lib\ojdbc14.jar

文件明确指出,我们不应该再使用oracle.jdbc.driver.OracleDriver,而应该使用oracle.jdbc.OracleDriver

JDBC驱动程序的下载页面如下:

使用C:\Windows\System32>path,只需在命令提示符下检查是否设置了路径?在第一次调用中,类路径中没有当前目录;在第二个示例中,您之所以得到它,是因为您正在使用
-cp
覆盖环境变量。您需要这个组合。@Sumeet路径不用于Java类路径。如果我在bin文件夹中添加ojdbc7.jar,路径将类似于此,对吗?java-cp。DemoNo,因为它将在文件夹中查找类。
.jar
不是类,它包含类,因此需要显式地添加到类路径中。好的。。但是我只有名为ojdbc14.jar和ojdbc14_g.jar的文件。我需要ojdbc7.jar吗??我正在使用oracle 10g和jdk 1.7
ojdbc14_g.jar
很可能是一个非常旧的版本,你最好下载一个更新的版本,最好是一个Java 7版本。你知道我可以在哪里下载它的链接吗?