Java项目无法连接到Oracle数据库,驱动jar包导入是正确的,所有预备工作都做好了,一起也测试成功的,就是不知道今抽的什么风解决方法
Java项目无法连接到Oracle数据库,驱动jar包导入是正确的,所有预备工作都做好了,一起也测试成功的,就是不知道今抽的什么风
Java项目无法连接到Oracle数据库,驱动jar包导入是正确的,所有预备工作都做好了,一起也测试成功的,就是不知道今抽的什么风。
还有,我用的是Mac系统
数据库管理类代码。
错误信息:
Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OracleDriver
at com.shengaofei.util.BaseDao.<clinit>(BaseDao.java:26)
at com.shengaofei.dao.impl.VehiclePurchaseTaxDaoImpl.save(VehiclePurchaseTaxDaoImpl.java:21)
at com.shengaofei.services.AllService.active(AllService.java:42)
at Test.main(Test.java:6)
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 4 more
------解决方案--------------------
看看你的classpath文件里面有吗?估计导的有问题吧,再不就是弄错包了。
Java项目无法连接到Oracle数据库,驱动jar包导入是正确的,所有预备工作都做好了,一起也测试成功的,就是不知道今抽的什么风。
还有,我用的是Mac系统
数据库管理类代码。
- Java code
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * 数据库管理类 * * @author Sheng_Aofei * */ public final class BaseDao { private static Connection conn; // 数据库链接对象 private static final String URL = "jdbc:oracle:thin:@ip:port:database_name"; // 数据库链接URL private static final String USER = "user_name"; // 用户名 private static final String PASSWD = "passwd"; // 密码 /** * 基本操作 */ static { try { // Class.forname();已经试过了,不行 DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); conn = DriverManager.getConnection(URL, USER, PASSWD); // 获取数据库链接实例 } catch (SQLException e) { e.printStackTrace(); } } /** * 获取数据库链接实例 * * @return 数据库链接实例 */ public static Connection getConn() { if (conn != null) return conn; else return null; } /** * 关闭选项 * * @param rs * 结果集 * @param ps * 适配器 * @param isCloseConn * 决定是否关闭数据库链接对象(建议程序即将结束或认为再也不做数据库访问时再关闭),true表关闭,false表不关闭 */ public static void closeOption(ResultSet rs, PreparedStatement ps, boolean isCloseConn) { try { // 关闭结果集 if (rs != null && !rs.isClosed()) { rs.close(); rs = null; } // 关闭适配器 if (ps != null && !ps.isClosed()) { ps.close(); ps = null; } // 关闭数据库链接实例 if (isCloseConn && conn != null && !conn.isClosed()) { conn.close(); conn = null; } } catch (SQLException e) { e.printStackTrace(); } } }
错误信息:
Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OracleDriver
at com.shengaofei.util.BaseDao.<clinit>(BaseDao.java:26)
at com.shengaofei.dao.impl.VehiclePurchaseTaxDaoImpl.save(VehiclePurchaseTaxDaoImpl.java:21)
at com.shengaofei.services.AllService.active(AllService.java:42)
at Test.main(Test.java:6)
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 4 more
------解决方案--------------------
看看你的classpath文件里面有吗?估计导的有问题吧,再不就是弄错包了。