5

所以,我刚刚完成了一个带有数据库和其他东西的小型 Java 应用程序......我使用了 Netbeans 和 Mysql,现在我想导出我的项目,以便我可以在任何我想要的地方使用它;任何计算机,即使没有安装 Mysql 或 Java!所以,我尝试了一些程序,如 Launch4j 或其他东西......但主要问题是,即使我制作了 .exe 文件,数据库会发生什么?它位于我的 PC 中,所以如果有人尝试使用我的应用程序,他将无法访问数据库,因此该应用程序将无法运行......

换句话说......如果可能的话,我可以使用什么解决方案来将数据库与应用程序“组合”起来?或者用数据库创建.exe文件...我希望我的问题很清楚,谢谢你的回答:)

4

5 回答 5

3

您可以查看MySQL Connector/MXJ以将您的 mysql 数据库嵌入到您的应用程序中。

但请注意,此软件包不再处于积极开发中:

由于需求非常低,MySQL 已停止对 Connector/MXJ 的开发和支持。以前发布的版本的源代码和二进制文件将继续从档案中获得。

另一种解决方案是使用另一个数据库,如SQLiteH2HSQLDB

于 2013-09-02T21:13:11.080 回答
2

您可以通过 eclipse 导出项目来创建可执行 jar。您可以按照以下步骤执行此操作:

  • 右键单击项目
  • 导出为 Jar 文件
于 2014-09-26T12:26:41.543 回答
1

当您在 netbeans 中编程时,您是否将数据库包含在 netbeans 中?这是有关如何执行此操作的指南。

https://netbeans.org/kb/docs/ide/mysql.html

这里还有关于如何打包和分发 Java 桌面应用程序的第二个指南

https://netbeans.org/kb/docs/java/javase-deploy.html

我希望这些帮助。

如果不只是回顾一下您构建应用程序所采取的步骤。

于 2013-09-02T21:11:52.847 回答
1

如果你真的想给你的用户一个好的体验,我建议你在你的应用程序中实现一个嵌入式数据库。

看:http ://www.h2database.com/

它是免费和开源的,我自己大量使用它。它支持嵌入式(在计算机上创建平面数据库文件)、内存和服务器模式,您可以让多个应用程序共享同一个数据库。

它只是一个包含在应用程序中的 jar 文件,然后用户无需安装 MySQL,也无需在网络驱动器上访问 MySQL,也无需安装其他数据库软件。(根据您的要求,研究 Hibernate 可能也是一个好主意,以便在不同的 RDBMS 之间进行更多抽象)。

于 2013-09-02T21:15:17.943 回答
0

为了获得内置到应用程序中的数据库,请考虑 HSQLDB,它是一个内存数据库。

http://hsqldb.org/

它可以完全在 JVM 中运行,无需任何外部资源。

于 2013-09-02T21:11:09.060 回答