我有一个应用程序,我需要用户Observer来解决。由于代码实现很长,我想总结一下这个问题。使用Observer和Observable解决应用程序
我开始申请。
我有一个LogInWindow,我可以选择司或学生。
秘书可以为给定课程的学生添加学生,课程和成绩。 学生只能看到其结果。
我需要使用Observer,这样如果一个秘书登录到该应用程序的一个实例中,并且学生在该应用程序的另一个实例中登录,当秘书在该课程中为该学生添加结果时,该学生看到立即在其名单上列出新课程及其结果。
从txt文件中读取数据。
我的解决方案。 SecretaryWindow是观察员 StudentWindow是观察员 ResultRepositoryFile是可观察对象
当我点击Add按钮的控制器中添加一个结果(studentName,courseName,结果)的ResultRepositoryFile。 SecretaryWindow观察者认为,打印一条消息并保存包含ResultRepositoryFile的txt文件。
现在StudentWindow我点击一个RefreshButton和ResultRepositoryFile在列表中重新加载从这个窗口,显示出新添加的Result.class
这是做正确的方式,因为我有疑虑。
如何使用Observer同步同一应用程序的两个实例?
感谢您的阅读,并希望您能帮助我。
+1。很好的建议使用MySQL而不是文本文件。你认为这很重要,你错了。这实际上比这更重要;)。另外,我认为Observable模式的使用在这里是强制性的(我怀疑它在要求中)。 –
感谢您的建议,但不幸的是,数据是从txt文件中读取的,Observable的使用是强制性的(分配要求)。 – Mythul
感谢您的建议,但不幸的是,数据是从txt文件中读取的,使用Observable是强制性的(分配要求)。我只是不知道如何实现StudentWindow的“更新”,以便秘书为该学生添加新的结果时,结果自动出现在该StudentWindow上,而无需按下RefreshButton。或者需要某种刷新输入?该应用程序有两个主线,其中一个在其他StudentWindow上拥有SecretaryWindow,而不是txt数据文件,它们是唯一共同的东西?谢谢您的帮助。 – Mythul