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应在何处查找类:
表示当前目录
表示:在这个jar文件中C:\oraclejdbc\ojdbc7.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.7ojdbc14_g.jar
很可能是一个非常旧的版本,你最好下载一个更新的版本,最好是一个Java 7版本。你知道我可以在哪里下载它的链接吗?