Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为基于java的桌面应用程序实现多用户交互?_Java_Javafx_Netbeans_Desktop Application_Scenebuilder - Fatal编程技术网

如何为基于java的桌面应用程序实现多用户交互?

如何为基于java的桌面应用程序实现多用户交互?,java,javafx,netbeans,desktop-application,scenebuilder,Java,Javafx,Netbeans,Desktop Application,Scenebuilder,我对编程很陌生,所以请容忍我 对于我的大学项目,我正在开发一个Java桌面应用程序,它使用MySQL实现一个数据库。对于GUI,我使用JavaFx和场景生成器。 我正在制作的应用程序,某种程度上是从谷歌playstore上的某些基于android的应用程序中获得灵感的,即“生活是一个RPG”和“Habitica”。它们有点像“生产力”应用程序,可以帮助你向应用程序中添加你想要完成的任务,然后在完成上述任务时奖励你应用程序内的“体验点”和“金牌”。它有点像老式的rpg游戏,并试图以一种“类似任务”

我对编程很陌生,所以请容忍我

对于我的大学项目,我正在开发一个Java桌面应用程序,它使用MySQL实现一个数据库。对于GUI,我使用JavaFx和场景生成器。 我正在制作的应用程序,某种程度上是从谷歌playstore上的某些基于android的应用程序中获得灵感的,即“生活是一个RPG”和“Habitica”。它们有点像“生产力”应用程序,可以帮助你向应用程序中添加你想要完成的任务,然后在完成上述任务时奖励你应用程序内的“体验点”和“金牌”。它有点像老式的rpg游戏,并试图以一种“类似任务”的方式组织你必须完成的任务

这是我最初的想法。我的导师希望我添加一些功能。也就是说,他希望我的应用程序的用户能够彼此组成“团体”或“派对”,并参与某种团体活动,在这种活动中,他们都在做相同的活动,因此,他们会因为所说的活动而获得奖励

在浏览教程之后,我设法找到并实现了应用程序的基本功能,比如用户登录或添加任务等。然而,我没有弄清楚的是,我如何在应用程序中实现这种用户对用户的交互。我很抱歉,如果我的问题听起来有点过于宽泛,无法提问,但我一直在查找,我无法理解或想出如何告诉我的程序,用户a正在与用户B交互,并且他们正在共同完成某项任务

我再次为这个相当愚蠢的问题和冗长的文字墙道歉。在这方面提供一些帮助或澄清将不胜感激。就我需要研究和学习的内容而言,即使是在正确的方向上提出一点,也会有很大的帮助


多谢各位

因为这是一个非常宽泛的问题,我将给你一个高层次的答案。各个桌面客户端都共享同一个数据库(MySQL)

因此,您可以在数据库中解决这个问题

一种选择是进行某种“小组任务”。您应用程序的每个用户都可以注册此任务,当任务“完成”时,每个人都可以获得一些积分

要管理此功能,您可能需要在数据库中创建多个表:

  • 一个用于任务的表
  • 一张供合作者使用的表格
每个任务都需要一个唯一的id,您可以在collaborators表中引用该id

Task table:

-------------------------
| ID | Task             |
=========================
| 1  | Slay dragon      |
-------------------------

Collaborators table:
-------------------------
| Task | User           |
=========================
| 1    | Moe            |
-------------------------
| 1    | Homer          |
-------------------------
在这个例子中,
Moe
Homer
的任务是杀死一条龙。一旦龙死了,两个人都可以得到一些分数。这是一个非常非常简单的例子。通常,你会有更多的桌子。至少有一个用于用户等


但除此之外,这将是一个高层次的想法。显然,您需要构建一些用户界面,以允许用户参与任务等。但我相信您可以找到答案。

对不起,这太模糊和广泛了,无法回答。只需将此类信息也存储在数据库中,就像其他数据一样……注意到。非常感谢你。这在很大程度上解决了手头的问题,我现在有了一些想法,知道如何在未知领域实现它,而不让我的脚沾湿。这非常有帮助。再次为这个过于模糊和宽泛的问题道歉。我花了很长时间才真正找到问题本身,我觉得自己对自己不知道该怎么做的事情一无所知。希望有了这个,我能在进步方面取得飞跃。非常感谢你的帮助。