gpt4 book ai didi

java - 我应该在 Web 应用程序的 Java bean 中添加对 PropertyChangeSupport 和 PropertyChangeListener 的支持吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:11:36 24 4
gpt4 key购买 nike

我注意到 some people编写支持 Property Change 观察者模式的 bean。

import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.io.Serializable;

public class SampleBean implements Serializable {
public static final String PROP_SAMPLE_PROPERTY = "sampleProperty";
private String sampleProperty;
private PropertyChangeSupport propertySupport;

public ChartBean() {
propertySupport = new PropertyChangeSupport(this);
}

public String getSampleProperty() {
return sampleProperty;
}

public void setSampleProperty(String value) {
String oldValue = sampleProperty;
sampleProperty = value;
propertySupport.firePropertyChange(PROP_SAMPLE_PROPERTY, oldValue, sampleProperty);
}


public void addPropertyChangeListener(PropertyChangeListener listener) {
propertySupport.addPropertyChangeListener(listener);
}

public void removePropertyChangeListener(PropertyChangeListener listener) {
propertySupport.removePropertyChangeListener(listener);
}
}

但是,我记得读过,由于 Web 应用程序的无状态性质,观察者模式在基于 Web 的 MVC 模式中并不常用。

web 应用程序 Java bean 中遵循上述模式是一种好的做法吗?

最佳答案

老实说,只有在您确实需要该功能时才会费心。大多数 Web 应用程序不需要 PropertyChangeSupport。我真的不记得在我见过的任何网络应用程序中看到过它。我只看到它被用于 Swing 应用程序。

Web 应用程序中的典型 bean 是一个非常短暂的对象,准备为单个请求提供服务,然后丢弃到空白中以进行垃圾收集。主要问题是 Web 应用程序是我的天性,并发和多用户这不适合具有监听器和事件等的生命周期更长的对象。

关于java - 我应该在 Web 应用程序的 Java bean 中添加对 PropertyChangeSupport 和 PropertyChangeListener 的支持吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/971927/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com