本人是一学生,现在要做一课程设计,要用java连接oracle数据库,不知如何设置环境变量才好,请高手指点,我的系统是8.04版的ubuntu。现在时间有点紧,我实在是不想回XP做课程设计啊,急待高手指点,不胜感激!!!
java要连接oracle10g,请问应该如何设置环境变量,急!!!!
java要连接oracle10g,请问应该如何设置环境变量,急!!!![己解决]
- vincent_zh
- 帖子: 129
- 注册时间: 2008-04-05 10:56
- 来自: 学校
- vincent_zh
- 帖子: 129
- 注册时间: 2008-04-05 10:56
- 来自: 学校
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.sql.*;
import java.io.*;
import java.util.*;
/**
*
* @author vincent
*/
public class Test {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
ResultSet newrs;
Test newjdbc = new Test();
newrs = newjdbc.executeQuery("SELECT * FROM passenger");
try {
while (newrs.next()) {
System.out.print(newrs.getString("id"));
System.out.println(":"+newrs.getString("lphone"));
}
} catch (Exception e) {
e.printStackTrace();
}
newjdbc.close();
}
//dbUrl数据库连接串信息,其中“1521”为端口,“ora9”为sid
String dbUrl = "jdbc:oracle:thin:@127.0.0.1:1521:xe";
//theUser为数据库用户名
String theUser = "visitor";
//thePw为数据库密码
String thePw = "visitor";
//几个数据库变量
Connection c = null;
Statement conn;
ResultSet rs = null;
//初始化连接
public Test() {
try {
//DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Class.forName("oracle.jdbc.oracle.OracleDriver").newInstance();
//与url指定的数据源建立连接
c = DriverManager.getConnection(dbUrl, theUser, thePw);
//采用Statement进行查询
conn = c.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
}
//执行查询
public ResultSet executeQuery(String sql) {
rs = null;
try {
rs = conn.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
public void close() {
try {
conn.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
上面是我的文件Test.java的内容,运行如下命令有如下提示,请看下是什么问题
vincent@NSHM:~/Desktop$ javac Test.java
vincent@NSHM:~/Desktop$ java Test
java.lang.ClassNotFoundException: oracle.jdbc.oracle.OracleDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at Test.<init>(Test.java:52)
at Test.main(Test.java:22)
Exception in thread "main" java.lang.NullPointerException
at Test.executeQuery(Test.java:66)
at Test.main(Test.java:23)
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.sql.*;
import java.io.*;
import java.util.*;
/**
*
* @author vincent
*/
public class Test {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
ResultSet newrs;
Test newjdbc = new Test();
newrs = newjdbc.executeQuery("SELECT * FROM passenger");
try {
while (newrs.next()) {
System.out.print(newrs.getString("id"));
System.out.println(":"+newrs.getString("lphone"));
}
} catch (Exception e) {
e.printStackTrace();
}
newjdbc.close();
}
//dbUrl数据库连接串信息,其中“1521”为端口,“ora9”为sid
String dbUrl = "jdbc:oracle:thin:@127.0.0.1:1521:xe";
//theUser为数据库用户名
String theUser = "visitor";
//thePw为数据库密码
String thePw = "visitor";
//几个数据库变量
Connection c = null;
Statement conn;
ResultSet rs = null;
//初始化连接
public Test() {
try {
//DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Class.forName("oracle.jdbc.oracle.OracleDriver").newInstance();
//与url指定的数据源建立连接
c = DriverManager.getConnection(dbUrl, theUser, thePw);
//采用Statement进行查询
conn = c.createStatement();
} catch (Exception e) {
e.printStackTrace();
}
}
//执行查询
public ResultSet executeQuery(String sql) {
rs = null;
try {
rs = conn.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
public void close() {
try {
conn.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
上面是我的文件Test.java的内容,运行如下命令有如下提示,请看下是什么问题
vincent@NSHM:~/Desktop$ javac Test.java
vincent@NSHM:~/Desktop$ java Test
java.lang.ClassNotFoundException: oracle.jdbc.oracle.OracleDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at Test.<init>(Test.java:52)
at Test.main(Test.java:22)
Exception in thread "main" java.lang.NullPointerException
at Test.executeQuery(Test.java:66)
at Test.main(Test.java:23)
修己,安人
- vincent_zh
- 帖子: 129
- 注册时间: 2008-04-05 10:56
- 来自: 学校
- bird
- 帖子: 765
- 注册时间: 2006-09-04 10:45
- 联系:
- vincent_zh
- 帖子: 129
- 注册时间: 2008-04-05 10:56
- 来自: 学校