当我在Java桌面应用程序中搜索一个简单的嵌入式JPA数据库时,我发现Apache Derby / Java DB是一种非常常见的方法。
我已经发现自从1.6以来每个JRE / JDK安装都默认使用Java DB。
但是当进入教程时,安装德比有很多步骤......
忽略这些步骤,只是试着像:
public class Main {
public static void main(String[] args) throws ClassNotFoundException {
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
}
}
抛出以下异常:
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.derby.jdbc.EmbeddedDriver
这让我想到了我的问题:
我是否需要最终用户来设置任何环境变量或类似内容?如果我只想发送一个JAR(或至少只有一个)包含运行我的桌面应用程序所需的所有内容的文件夹是德比仍然是更正确的东西,或者它是一个死胡同,我应该寻找SQLite-Libs或什么?
答案 0 :(得分:4)
如果包含您提供的方法调用,则不需要任何环境变量。但是,您需要确保JDBC驱动程序位于类路径中。最简单的方法是setting the classpath in your JAR's manifest file
我最近询问了related question,并被指示查看H2和HSQLDB。我目前正在使用HSQLDB,它似乎符合我的需求,与您自己的需求非常相似。我希望这有帮助!