【发布时间】:2014-06-02 08:44:06
【问题描述】:
当我在 netbeans 的“服务”选项卡下连接 java db 时,该程序运行良好,但是当我尝试在 netbeans 之外打开 prog 的可执行 jar 文件时,它根本不起作用。我希望这个 java 应用程序可以被多个用户访问,因为我希望把它放在我的本地网络上,所以我想我需要以网络模式连接到 Derby 数据库....我正确吗.?.... .我应该如何解决这个问题..?以下是我的应用程序的代码片段
public void DoConnect() {
try {
/*
** Load the Derby driver.
** When the embedded Driver is used this action start the Derby engine.
** Catch an error and suggest a CLASSPATH problem
*/
Class.forName("org.apache.derby.jdbc.ClientDriver");
try {NetworkServerControl server = new NetworkServerControl();
server.start (null);}
catch(Exception e)
{
System.err.println(e.getMessage());
}
System.out.println(driver + " loaded. ");
} catch (java.lang.ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
System.err.println(e.getMessage());
System.out.println("\n >>> Please check your CLASSPATH variable <<<\n");
}
try {
//CONNECT TO THE DATABASE
String host = "jdbc:derby://localhost:1527/Employee";
String uName = "admin";
String uPass = "admin";
//EXECUTE SQL QUERY AND LOAD RESULTSET
con = DriverManager.getConnection(host, uName, uPass);
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
String SQL = "SELECT * FROM Workers";
rs = stmt.executeQuery(SQL);
//MOVE CURSOR TO FIRST RECORD AND GET DATA
rs.next();
int id_col = rs.getInt("ID");
String id = Integer.toString(id_col);
String first_name = rs.getString("First_Name");
String last_name = rs.getString("Last_Name");
String job = rs.getString("Job_Title");
//DISPLAY THE FISRT RECORD IN THE TEXT FIELD
textID.setText(id);
textFirstName.setText(first_name);
textLastName.setText(last_name);
textJobTitle.setText(job);
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
【问题讨论】:
-
在我重建项目时添加第一个try catch块后......应用程序的jar文件甚至没有启动......
-
“甚至没有开始”是什么意思?它会抛出异常吗?异常包含大量信息:wiki.apache.org/db-derby/UnwindExceptionChain
-
@BryanPendleton 使用上面的代码,当我尝试在 netbeans 之外运行可执行 jar 文件时,什么都没有发生.....如果我删除第一个 try catch 块,那么我得到了我创建的 Jframe我运行了 jar 文件,但没有与我使用 netbeans 服务创建的 Employee 数据库建立任何连接......无论有没有第一个 try catch 块,代码在 netbeans 环境中都可以正常工作......
-
@BryanPendleton 请帮忙....
标签: java database database-connection derby