并发嵌入式Java数据库用于简单应用程序

时间:2013-05-16 10:31:44

标签: java sql database h2

我正在尝试构建一个简单的GUI,您可以在其中编写一些整数。这些整数应该写入我正在寻找的数据库中。

到目前为止一切顺利。然后,数据库中的数据应该用于另一个已经存在的独立应用程序。

我已经尝试过SQLite但我收到了很多“数据库锁定”错误。我搜索了谷歌。我经常读到的关键答案是切换到支持并发进程的数据库。

我进一步研究了H2和HSQLDB。它们似乎都是合法的,但要复杂得多。

所以我想知道:

我希望GUI可以在.jar文件(或仅文件夹)中与数据库结合使用,因此当我切换计算机时,我不必将数据库安装在某个文件夹中,如家庭 - 目录什么的。使用SQLite,您所做的就是:

Connection con = DriverManager.getConnection("jdbc:sqlite:test.db");

如您所见,不需要Path-infortmation。如何使用H2或HSQLDB执行此操作?

我真的很期待你的建议。但请只开源。

最诚挚的问候并非常感谢你!

的Stefan

2 个答案:

答案 0 :(得分:0)

处理嵌入式db文件的创建应该不是一个大问题 - 但是如果你真的不喜欢SQLite这个问题:它应该能够很好地处理基本用法的并发性 - “数据库锁定”听起来更像应用程序级问题< / p>

答案 1 :(得分:0)

使用H2和HSQLDB,您也可以这样做。

使用H2,表单jdbc:h2:test的数据库URL将在应用程序的当前工作目录中创建名为test.h2.db的文件。如果这是你想要的,那就没关系。请注意我通常不建议这样做,因为很多人遇到的问题是他们有时会在不同的目录中启动应用程序(然后会创建一个新的数据库)。因此,我建议使用jdbc:h2:~/test,这意味着数据库文件是相对于当前用户主目录存储的。