将数据库嵌入到 Jar 文件中
Embedded Database into Jar File
在过去的几天里,我一直在尝试让我的 Derby 数据库在我的 jar 文件中被访问。这是我的连接 class 的样子:
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
public class DBConnection
{
public static final String DRIVER = "org.apache.derby.jdbc.EmbeddedDriver";
public static final String JDBC_URL = "jdbc:derby:EmployeeInfo";
public static Connection dbConnector()
{
try
{
Class.forName(DRIVER).newInstance();
Connection conn = DriverManager.getConnection(JDBC_URL);
JOptionPane.showMessageDialog(null, "Connection successfull");
return conn;
}catch(Exception e)
{
JOptionPane.showMessageDialog(null, e);
return null;
}
}
}
此外,这是我的项目资源管理器的屏幕截图:
当我在 eclipse 中时,一切正常,我的程序按预期运行,我的 GUI 更新了数据库。但是当我把我的程序变成一个 jar 文件时,它说它找不到我的数据库 EmployeeInfo(注意:Database.jar 是 EmployeeInfo 数据库)。最后一件事,当我在另一台机器上尝试 jar 文件时,它还指出找不到数据库。
最好解释一下为什么会出现这种情况并进行任何修复!
-谢谢,
亚伦:)
好吧,我最终找到了解决方法:)。我必须将嵌入式 derby 数据库文件与 derby jar 一起放入一个文件夹中,我的 jar 文件包含我的项目,一切都运行得很好!
在过去的几天里,我一直在尝试让我的 Derby 数据库在我的 jar 文件中被访问。这是我的连接 class 的样子:
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
public class DBConnection
{
public static final String DRIVER = "org.apache.derby.jdbc.EmbeddedDriver";
public static final String JDBC_URL = "jdbc:derby:EmployeeInfo";
public static Connection dbConnector()
{
try
{
Class.forName(DRIVER).newInstance();
Connection conn = DriverManager.getConnection(JDBC_URL);
JOptionPane.showMessageDialog(null, "Connection successfull");
return conn;
}catch(Exception e)
{
JOptionPane.showMessageDialog(null, e);
return null;
}
}
}
此外,这是我的项目资源管理器的屏幕截图:
当我在 eclipse 中时,一切正常,我的程序按预期运行,我的 GUI 更新了数据库。但是当我把我的程序变成一个 jar 文件时,它说它找不到我的数据库 EmployeeInfo(注意:Database.jar 是 EmployeeInfo 数据库)。最后一件事,当我在另一台机器上尝试 jar 文件时,它还指出找不到数据库。
最好解释一下为什么会出现这种情况并进行任何修复! -谢谢, 亚伦:)
好吧,我最终找到了解决方法:)。我必须将嵌入式 derby 数据库文件与 derby jar 一起放入一个文件夹中,我的 jar 文件包含我的项目,一切都运行得很好!