基本应用程序体系结构-JAVA中的基本观察者/观察者

基本应用程序体系结构-JAVA中的基本观察者/观察者,java,swing,design-patterns,Java,Swing,Design Patterns,我有一个用JAVA编写的web服务,它检索有关天气的信息并发送带有该信息的对象 应该使用JAVA中的Observer-Observable设计模式来处理这些信息 此外,我确实需要将该信息发送到SWING中的JList,以获得图形用户界面 该模型的实现如下所示: public class Model implements Observer{ // all the code that receives, override the update method and so on } 然后,我需要将该

我有一个用JAVA编写的web服务,它检索有关天气的信息并发送带有该信息的对象

应该使用JAVA中的Observer-Observable设计模式来处理这些信息

此外,我确实需要将该信息发送到SWING中的JList,以获得图形用户界面

该模型的实现如下所示:

public class Model implements Observer{
// all the code that receives, override the update method and so on
}
然后,我需要将该对象放入一个数组中,并将该信息发送到UI

该模型每15分钟自动接收一个新的天气对象

我想知道哪种架构是实现这一点的最佳架构。我不确定我是否应该接收模型中的信息,处理它,并使用按钮或UI上触发某种方法的类似按钮手动更新UI

最好的方案是在我处理模型上的信息后自动更新JList。 在这种情况下,我应该在模型和UI中实现观察器吗?因为模型从web服务接收,而模型发送到UI

这是一个非常基本的问题,但我不确定哪一个是实现它的最佳选择,所以我需要一些帮助

我添加图片是为了澄清情况


谢谢

如前所述,Swing有自己的数据模型,通过管理和启动
Listener
s来实现一些“观察者模式”

见:


您可能希望创建和更新这样的模型,并在更新后启动必要的侦听器。

图表上的“模型”和“视图”是什么?我的意思是UI(Swing)有自己的视图、控制器和模型……我有一个类,它从web服务接收信息,处理信息,并应该使用这些信息填充UI上的JList。MVC将是最好的解决方案。模型将负责管理数据(至少检索和处理数据);然后,它将生成一个变更的事件通知,然后将其传播给相关方。这取决于你自己。Swing有许多“侦听器”模式,您可能可以重复使用,但如果其他模式不能满足您的需要,则没有任何东西可以阻止您创建自己的模式。主要问题是,我不知道如何在列表更新后自动更新JList小部件。你能告诉我怎么/在哪里找这个吗?谢谢。所以,我想澄清一下:我应该从“model”类的web服务(必需)收到信息。然后,在此处填充一个列表(以防万一)。然后,基于之前填充的模型在Swing上实现一个JList。。。