我想征求您对我正在开发的 Java 应用程序的本地数据库的意见。
它是 vert 应用程序,这意味着我需要先存储客户、宠物和病史的详细信息。我知道如何使用 JDBC,但我只在小程序中在线使用过它。
所以,我真的不太了解本地解决方案以及当我将应用程序发布在 .jar 中时这些解决方案将如何工作,所以请指导我。 MySQL 还能工作吗?
谢谢!
最佳答案
这是一个相当笼统的问题,细节很简单,MySQL 听起来可以在这里工作。如果这仅用于本地访问并且不需要典型的客户端-服务器模型,那么我鼓励研究可以直接加载到 JVM 中的数据库引擎。好处之一是无需安装任何单独的数据库组件,整个数据库引擎的 JAR 可以打包在您的应用程序中。
下面是其中的一些:
- Apache Derby
- HyperSQL
- H2
- SQLite - 一些围绕 C 库的 Java 包装器可用,但据我所知,没有任何纯 Java JDBC 驱动程序可用于此。
我意识到开发人员为本地使用配置 MySQL 并不困难,但它可能会导致最终用户出现许多支持问题。可以编写安装脚本来预先配置大量安装,但我不确定其细节,在打包应用程序时,这将是您需要解决的额外项目。
关于为此使用 MySQL 的一些常见问题如下所示。这很可能是最好的方式,但这些只是一些需要考虑的事情。其中大部分并不是真正特定于应用程序的开发,更多的是在事物的支持方面。使用上述数据库引擎可以消除所有或许多这些问题。
- 多台计算机都必须同时连接到同一个数据库吗?
- 您使用什么 MySQL 密码?
- 您是否建议最终用户都使用同一个安全性不佳的软件?
- 或者最终用户是否需要创建一个,在这种情况下,您可能需要处理忘记的密码,而最终用户必须在您的应用程序中配置密码?
- 您的最终用户是否运行可能会干扰数据库连接的防病毒软件?
- 如果他们有另一个使用 MySQL 的程序已经在使用默认端口怎么办?
关于java - 本地 Java 应用程序 - 数据库选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16136601/