我做个GUI程序,用了Access数据库,链接方式如下:
- Java code
private String driverName = "sun.jdbc.odbc.JdbcOdbcDriver"; private String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=db\\edHelper.mdb"; private String userName = "??"; private String passWord = "0726abcd0726"; private Connection connect() { Connection conn = null; try { Class.forName(this.driverName); conn = DriverManager.getConnection(this.url, this.userName, this.passWord); } catch (Exception e) { System.out.println(e.getMessage()); } return conn; }
这种链接方式运行是没有任何错误的,但是当我打包jar时却报错这样的错误,一直没有找到解决:
DOS模式:
C:\>java -jar EDhelper.jar
[Microsoft][ODBC Microsoft Access Driver] '(未知的)'不是一个有效的路径。 确定路
径名称拼写是否正确,以及是否连接到文件存放的服务器。
Exception in thread "main" java.lang.NullPointerException
at com.bruce.EDhelper.core.AccessDB.executeQuery(AccessDB.java:53)
at com.bruce.EDhelper.core.AdvancedEdit.initConfig(AdvancedEdit.java:67)
at com.bruce.EDhelper.core.AdvancedEdit.<init>(AdvancedEdit.java:43)
at com.bruce.EDhelper.UI.EDFrame.<init>(EDFrame.java:88)
at com.bruce.EDhelper.UI.EDFrame.main(EDFrame.java:444)
各位“大虾”如何解决这个问题呢?
------解决方案--------------------
private String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=db\\edHelper.mdb";
不用这样写。
你在管理工具中,增加一个ACCESS 的数据源。数据源名称为如“edhelper”
private String url = "jdbc:odbc:edhelper"
你试试