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