【问题标题】:Deploying a Java App with database mysql desktop使用数据库 mysql 桌面部署 Java 应用程序
【发布时间】:2015-05-30 21:36:24
【问题描述】:

我编写了一个使用 mysql 作为数据库的 Java 桌面应用程序。现在正处于如何使用 mysql 数据库部署这个应用程序的十字路口。是否可以将数据库添加到应用程序的 jar 文件中,以便在用户打开应用程序时自动启动?

【问题讨论】:

  • 是的,你可以这样做,但我不会为此推荐 MySql。

标签: java mysql spring database desktop-application


【解决方案1】:

MySql 不是平台无关的可执行文件。因此,如果你用 MySQL 打包你的应用程序(忘记你需要安装 MySQL 的事实!),它不会在所有计算机上都是 binary compatible(想想 mac、pc、linux)

您可以使用H2Derby 之类的东西,它们只是用Java 编写的类似于SQL 的数据库。然后你就可以发送你的 jar 文件并在其中包含数据库程序。

【讨论】:

  • 谢谢,但在这种情况下,用户可能更喜欢 mysql 数据库。是否可以在客户端电脑中单独安装mysql数据库,然后配置到应用程序中?
  • 如果您能稍微解释一下配置部分,请尽可能使用示例和代码
【解决方案2】:

,您不能在 JAR 文件中包含 MySQL 数据库。 MySQL 不是独立数据库,你必须单独安装它,所以你不能将它包含在你的 JAR 文件中。如果你想要独立的 SQL 数据库,你可以使用SQLite,虽然它不会包含在你的 JAR 文件中,但是你可以在你的程序中选择在文件系统上自动创建SQLite 数据库文件,以及所有必要的表在里面。 SQLite 是一个实现self-containedserverlesszero-configurationtransactional SQL 数据库引擎的软件库。 SQLite 是世界上的most widely deployed 数据库引擎。

或者如果你真的需要使用 MySQL 数据库,你可以使用一些远程服务器并在那里安装你的 MySQL,这样每个用户都可以访问它,如果他们有互联网连接,或者在客户端计算机上单独安装 MySQL 并手动或自动配置数据库使用具有表结构的 sql 转储文件或通过您的 Java 程序。

【讨论】:

    【解决方案3】:

    创建一个允许连接到数据库的不同类。这个类应该有一个 UI,它允许用户添加凭据以连接到数据库,然后保存到文件,即 ./lib/file.txt。每当你想要连接时,就会调用这个类。 试一试,然后我会在看到您的努力后向您发送示例代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-26
      • 1970-01-01
      • 2018-08-27
      • 2018-01-16
      • 2018-05-18
      相关资源
      最近更新 更多