今年我有一个项目。它是关于开发一个带有数据库的 Java 应用程序,用于在经理、秘书和财务主管之间共享和验证文档。
我的问题是:如何让所有人都可以访问数据库,因为应用程序将安装在我上面提到的计算机上,我是否必须在这些计算机上安装它(数据库)?将违反数据库的一致性和完整性约束。每次更新后用户将不会拥有相同的副本!
是否有可能(或 Java 中的技术)将数据库放在网络上并且所有人都可以访问,或者可以从我实现为服务器(客户端-服务器)的计算机上访问它。
非常感谢您的帮助或提供教程链接。
今年我有一个项目。它是关于开发一个带有数据库的 Java 应用程序,用于在经理、秘书和财务主管之间共享和验证文档。
我的问题是:如何让所有人都可以访问数据库,因为应用程序将安装在我上面提到的计算机上,我是否必须在这些计算机上安装它(数据库)?将违反数据库的一致性和完整性约束。每次更新后用户将不会拥有相同的副本!
是否有可能(或 Java 中的技术)将数据库放在网络上并且所有人都可以访问,或者可以从我实现为服务器(客户端-服务器)的计算机上访问它。
非常感谢您的帮助或提供教程链接。
如何使所有人都可以访问数据库,因为应用程序将安装在我上面提到的计算机上,我是否必须在这些计算机上安装它(数据库)?将违反数据库的一致性和完整性约束。每次更新后用户将不会拥有相同的副本!
您的问题表明您需要在一台计算机上安装一个数据库。我们称它为数据库计算机。我建议这是一台服务器,任何普通员工(如秘书、经理等)都无法访问。
拥有一个中央数据库将消除您对完整性违规的担忧。
现在,您有两个选择。您可以制作一个 Web 应用程序,您的用户将使用它与您的系统进行交互。这是一种更现代的方法,因为您将拥有一个 3 层系统:
第二种选择是制作一个桌面应用程序并将其部署到将要使用它的每个人的计算机上;然后让它连接到数据库以与之交互。
当您希望将应用程序公开给大量用户(以及网络)时,第一个选项更容易,但在执行此类操作时要知道自己在做什么,因为您必须非常重视安全性。
如果你走第一条路线,你将需要一些东西:
首先,一个数据库。尽你所能,但如果你需要免费和高质量的数据库,请使用PostgreSQL或MySQL。
二是应用服务器。我建议使用Tomcat或GlassFish。
现在,您需要使用JavaEE开发您的应用程序。有很多关于这方面的信息,所以我希望这能在一开始对你有所帮助,并为你指明正确的方向。
请注意,Tomcat 并不完全支持 Java EE,而是它的一个子集。这个子集对于您需要完成的工作肯定绰绰有余。
如果我理解正确,您正在寻找实现客户端-服务器系统的方法,其中不同计算机上的多个客户端分别连接到托管数据库的中央服务器(或服务器集群)。在 Java 中,通常(但不一定)数据库位于 Web 应用程序中,客户端是轻量级 Web 客户端 - 在这种情况下,它通常称为企业应用程序。
Java 为此提供了一个完整的专用 SDK,称为Java Enterprise Edition。您可能会在 SO 上找到许多与此相关的问题,以下是一些我认为可能特别有用的问题: