问候,
我正在构建的应用程序中有问题。
给我一个场景。
我有这两个控制器都从主控制器继承相同的模型初始化。
所有控制器都有其视图,但是我只有一个模型。
问题在于。每当该模型发生更改时。
如何通知另一个控制器(从两个控制器)发生了更新?
我打算使用Observer / Observable或PropertyChangeEvent吗?以及如何在MVC架构上实现这两者上我有些困惑。
非常感谢您对此事的回应。
谢谢,
西里尔·H。
最佳答案
我有一个类似的案例,其中我使用PropertyChangeSupport来监听模型的更改。我认为最好的方法是创建一个包含一个私有PropertyChangeSupport和两个公共方法addPropertyListener,removePropertyListener和一个受保护的方法firePropertyChange的AbstractEntity。这些方法将用作PropertyChangeSupport方法的包装。因此,您的控制器应只添加addPropertyListeners以便侦听通用模型的更改。
注意:
public void setValue(String value){
String oldValue=getValue();
this.value=value;
firePropertyChange("value",oldValue,getValue());
}