如何在可执行jar中嵌入oracle XE数据库?

时间:2014-07-17 10:44:24

标签: java sql oracle swing jdbc

我在“myecplise”中使用java swings和oracle XE数据库开发了java应用程序。我还创建了可执行jar文件,它在我的电脑上运行正常,但它显示jdbc.odbc ClassNotFound异常和其他pc中的NullPointer异常

我的连接代码是

    import java.sql.*;

    public class Connect {

    static Connection con=null;

        public static Connection ConnectDB(){

        try{

           // Class.forName("oracle.jdbc.driver.OracleDriver");

             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
            Connection con = DriverManager.getConnection("jdbc:oracle:thin:system/system@localhost"); 

             return con;



        }catch(Exception e){
            JOptionPane.showMessageDialog(null, e.getMessage());
            e.printStackTrace();
            return null;

    }      
}
}

1 个答案:

答案 0 :(得分:0)

DriverManager.getConnection("jdbc:oracle:thin:system/system@localhost")表示驱动程序管理器将连接到位于 localhost 的数据库。在另一台PC上,它试图在另一台机器上找到数据库,因为数据库不存在,就会发生异常。

您必须将连接更改为:

    DriverManager.getConnection("jdbc:oracle:thin:@arg0:arg1:arg2", arg3, arg4);

其中

arg0:托管数据库的计算机的IP。

arg1:数据库正在侦听的端口。

arg2:数据库的SID。

arg3:架构用户名。

arg4:架构密码。