1

I'd like to ask for your opinion on local databases for a java application i'm developing.

Its veterinary application, meaning I'll need to store Customer, Pet and Medical History details for a start. I know how to use JDBC but I've only used it online in applets.

So, I really dont know much about local solutions and how those gonna work when I'll publish the application in a .jar, so please guide me. Would MySQL still work?

Thanks!

4

1 回答 1

2

这是一个相当笼统的问题,而且对细节很清楚,MySQL 听起来好像可以在这里工作。如果这是仅用于本地访问并且不需要典型的客户端-服务器模型,那么我鼓励研究可以直接在 JVM 中加载的数据库引擎。好处之一是无需安装任何单独的数据库组件,整个数据库引擎的 JAR 可以打包在您的应用程序中。

以下是其中的一些:

  • 阿帕奇德比
  • 超SQL
  • H2
  • SQLite - 一些 C 库周围的 Java 包装器可用,但据我所知,没有任何纯 Java JDBC 驱动程序可用。

我意识到开发人员配置 MySQL 以供本地使用并不难,但它可能会导致最终用户出现许多支持问题。可以编写安装脚本以预先配置大量安装,但我不确定其中的详细信息,这将是您在打包应用程序时需要解决的附加项目。

下面显示了一些关于为此使用 MySQL 的一般问题。这可能是最好的方法,但这些只是需要考虑的一些事情。其中大多数并不是真正特定于应用程序的开发,而是更多地用于支持方面。利用上面提到的数据库引擎可以消除所有或许多这些。

  • 多台计算机是否都必须同时连接到同一个数据库?
  • 你使用什么 MySQL 密码?
  • 您是否建议最终用户都使用可能不太安全的同一个?
  • 或者最终用户是否需要创建一个,在这种情况下您可能需要处理忘记的密码并且最终用户必须在您的应用程序中配置密码?
  • 您的最终用户是否运行可能会干扰数据库连接的防病毒软件?
  • 如果他们有另一个使用 MySQL 的程序已经在使用默认端口怎么办?
于 2013-04-21T23:49:54.637 回答