写了一段代码读取Oracle数据,已经安装oracle客户端并设置了classpath=D:\oracle\ora92\jdbc\lib\classes12.jar;.
采用Eclipse或者JCreator都可以编译成功,但运行时报错
Hello World
before get driver
Error java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
转到dos下直接输入java MyDbTest却可以正常从数据库中查询到数据。代码如下,应该没问题。请帮忙看看是不是IDE或者系统设置出错了
import java.sql.*;
public class MyDbTest
{
public static void main(String[] args)
{
System.out.println("Hello World");
try
{
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("before get driver");
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(Exception e)
{
System.err.println("Error " + e);
}
//String dbUrl = "jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=C:\\ReportDemo.mdb";
String url="jdbc:oracle:thin:@172.16.3.2:1521:MyOracle";
try
{
System.out.println("before Connect");
Connection conn = DriverManager.getConnection(url, "gx", "gx");
System.out.println("before statement");
Statement stmtNew = conn.createStatement() ;
System.out.println("before select");
ResultSet rs = stmtNew.executeQuery("select * FROM MyTable");
ResultSetMetaData rsMetaData = rs.getMetaData();
int i;
for(i = 1; i <= rsMetaData.getColumnCount(); i ++)
System.out.print(rsMetaData.getColumnName(i) + '\t');
System.out.print('\n');
while(rs.next())
{
for(i = 1; i <= rsMetaData.getColumnCount(); i ++)
System.out.print(rs.getString(i) + '\t');
System.out.print('\n');
}
}
catch(Exception e)
{
System.err.println("Error " + e);
}
}
}
采用Eclipse或者JCreator都可以编译成功,但运行时报错
Hello World
before get driver
Error java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
转到dos下直接输入java MyDbTest却可以正常从数据库中查询到数据。代码如下,应该没问题。请帮忙看看是不是IDE或者系统设置出错了
import java.sql.*;
public class MyDbTest
{
public static void main(String[] args)
{
System.out.println("Hello World");
try
{
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("before get driver");
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(Exception e)
{
System.err.println("Error " + e);
}
//String dbUrl = "jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=C:\\ReportDemo.mdb";
String url="jdbc:oracle:thin:@172.16.3.2:1521:MyOracle";
try
{
System.out.println("before Connect");
Connection conn = DriverManager.getConnection(url, "gx", "gx");
System.out.println("before statement");
Statement stmtNew = conn.createStatement() ;
System.out.println("before select");
ResultSet rs = stmtNew.executeQuery("select * FROM MyTable");
ResultSetMetaData rsMetaData = rs.getMetaData();
int i;
for(i = 1; i <= rsMetaData.getColumnCount(); i ++)
System.out.print(rsMetaData.getColumnName(i) + '\t');
System.out.print('\n');
while(rs.next())
{
for(i = 1; i <= rsMetaData.getColumnCount(); i ++)
System.out.print(rs.getString(i) + '\t');
System.out.print('\n');
}
}
catch(Exception e)
{
System.err.println("Error " + e);
}
}
}
解决方案 »
- 小弟请求java关于构造器初始化的问题
- 接口的作用到底是什么?~我找了个例子,帮我看看吧! (
- JAVA中的JBUTTON能否用CTRL+字母做快捷键,不用ALT+字母
- rtf的解析问题
- 谁有SUN的tools.jar包的API document或其他说明文档?
- 为什么没有进行碰撞检测?
- 我作的记事本程序其中有一个地方想问下:就是如果打开是文件在文件编辑后保存可以保存到打开的文件中,但是如果我直接编辑然后保存到一个
- 请问怎样将String转为inputstream类型
- 紧急:JTable 中多行选择
- 谁知道JBUILDER中怎样使用鼠标滑轮
- 为什么会这样的Vector编译警告
- 请问如何知道hashtable中的values是二进字还是整型或字符传?
ECLIPSE:右击项目->properties->java build path;add enternal jar