`

jdk的PropertyChangeSupport属性值修改的观察者模式应用

    博客分类:
  • java
 
阅读更多

import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;

public class PropertyChangeSupportTest {
	
	static TestBean testBean = new TestBean();
	
	public static void main(String[] args) {
		PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(testBean);
		propertyChangeSupport.addPropertyChangeListener(new PropertyChangeListener(){

			@Override
			public void propertyChange(PropertyChangeEvent evt) {
				if(evt.getPropertyName().equals("name")){
					System.out.println("bean:" + PropertyChangeSupportTest.this.testBean + " field:" + evt.getPropertyName() + " value change,old value:" + evt.getOldValue() + " new value:" + evt.getNewValue());
				}
			}
			
		});
		testBean.setId(111);
		testBean.setName("mike");
		propertyChangeSupport.firePropertyChange("name","","mike"); //通知该属性值做了修改,通知相关listener进行处理
	}
	

	public static class TestBean{
		private int id;
		private String name;
		public int getId() {
			return id;
		}
		public void setId(int id) {
			this.id = id;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
	}
}

 

 

这是观察者模式的jdk应用场景,在我们平常的项目中,比如为了做到应用配置的动态加载,我们在应用启动后动态修改应用的一些配置参数时,需要通知相关应用了这个参数的应用点做出相应的变化,那么就可以用这个PropertyChangeSupport来完成。

0
0
分享到:
评论

相关推荐

    观察者模式详解(JDK中最重要的模式)

    ### 观察者模式详解(JDK中最重要的模式) #### 概述 观察者模式是一种设计模式,它定义了一种一对多的关系,使得多个观察者对象可以同时监听某个主题对象。当主题对象的状态发生变化时,它会通知所有的观察者对象...

    JAVA设计模式在JDK中的应用

    JDK中装饰者模式的应用包括: - `java.io.BufferedInputStream(InputStream)`: 增加缓冲功能的输入流。 - `java.io.DataInputStream(InputStream)`: 提供数据输入流。 - `java.io.BufferedOutputStream...

    JDK中有关23个经典设计模式的示例

    这些模式被广泛应用于Java等面向对象语言中,JDK(Java Development Kit)本身就是一个很好的实践场所,因为它包含了大量使用这些设计模式的例子。下面我们将详细探讨JDK中的23个设计模式及其应用。 1. 单例模式...

    设计模式在JDK的中的应用,PPT资源

    设计模式在JDK中的应用课设--PPT资源 题目要求: 设计模式在JDK中的应用(结合JDK源码,分析JDK对设计模式的支持与应用)。课设内容包括: (a)用UML类图分析JDK所支持或应用的设计模式的结构,并与GOF的结构加以...

    监听者模式练习(包括jdk api的实现和自定义实现)

    监听者模式,也被称为观察者模式,是一种设计模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。在Java中,JDK提供了内置的监听器接口和类来支持...

    专题资料(2021-2022年)java实验策略模式、观察者模式和组合模式.doc

    实验目标主要集中在三种设计模式的理解与应用上:策略模式、观察者模式以及组合模式。这些模式是面向对象设计中的核心概念,有助于创建灵活、可扩展的代码。 1. **策略模式**: 策略模式是一种行为设计模式,它使...

    Linux更换JDK+weblogic更换JDK

    ### Linux系统更换JDK与WebLogic服务器更换JDK详解 #### 一、概述 在Linux环境中,更换JDK(Java Development Kit)对于确保应用程序能够稳定运行至关重要。此外,如果使用了Oracle WebLogic Server作为应用服务器...

    JDK中的设计模式

    Java Development Kit (JDK) 中包含了许多设计模式的应用实例,这些实例不仅展示了设计模式的强大功能,还为Java开发者提供了宝贵的参考。 #### 创建型模式 创建型模式关注的是对象的创建方式。通过这种方式,可以...

    使用Java8实现观察者模式的方法(上)

    观察者模式是一种设计模式,它在软件开发中扮演着关键角色,特别是在构建响应式系统时。...然而,理解和解决观察者模式中的复杂问题,如内存泄漏、线程安全和性能优化,仍然是开发者在实际应用中需要关注的重点。

    设计模式在JDK中的应用 (背景、UML结构、角色、职责)

    设计模式在JDK中的应用课设完整报告,Word文档 题目要求: 设计模式在JDK中的应用(结合JDK源码,分析JDK对设计模式的支持与应用)。课设内容包括: (a)用UML类图分析JDK所支持或应用的设计模式的结构,并与GOF的...

    java观察者模式介绍

    Observer模式定义对象间的一对多的依赖关系,当一个对象(被观察者)的状态发生改变时, 所有依赖于它的对象(观察者)都得到通知并被自动更新。JDK里提供的observer设计模式的实现由java.util.Observable类和 java....

    查看JDK中变量的值, debug JDK

    接下来,我们需要将编译好的`debug_rt.jar`应用到我们的项目中,以实现查看JDK源代码变量值的功能: 1. 当尝试调试Java程序,尤其是在涉及JDK内部类或方法时,会发现无法查看JDK源代码的变量。这是因为默认的JDK库...

    JDK11安装包,JDK11安装包

    JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11...

    JDK和ORACLE JDK冲突修改环境变量

    - 如果已经有`JAVA_HOME`变量,则修改其值为Oracle JDK的安装路径。 ##### (3) 更新`Path`环境变量 - 在“系统变量”区域找到`Path`变量,点击“编辑”。 - 将Oracle JDK的`bin`目录路径添加到`Path`变量的开头,...

    JDK8注解应用例子

    本篇文章将深入探讨JDK8中的注解应用。 一、元注解 元注解是用于定义其他注解的注解。JDK8中包含以下元注解: 1. `@Retention`:定义注解的生命周期,可以是SOURCE(源码阶段)、CLASS(编译时)或RUNTIME(运行...

    设计模式实战、jdk源码|simple-demo.zip

    创建型模式(如单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式)、结构型模式(如适配器模式、装饰器...观察者模式、迭代器模式、访问者模式、命令模式、备忘录模式、状态模式、职责链模式、解释器模式)...

    jdk15.0.2.zip

    JDK,全称为Java Development Kit,是Oracle公司提供的用于开发和运行Java应用程序的核心工具集。JDK 15.0.2是Java的一个重要版本,它包含了Java编译器(javac)、Java虚拟机(JVM)、Java运行时环境(JRE)以及各种...

    jdk 内存设置jdk内存设置

    jdk 内存设置 jdk 内存设置是 Java 开发中非常重要的一部分。它直接影响着 Java 应用程序的性能和稳定性。...合理的 jdk 内存设置可以提高 Java 应用程序的性能和稳定性,提高开发者的开发效率和用户的使用体验。

    windows指定kettle的jdk版本(当前计算机已经安装多个jdk).docx

    在Windows操作系统中,当一台计算机上安装了多个Java Development Kit (JDK) 版本时,可能需要为特定的应用程序,如Kettle(Pentaho Data Integration),指定一个特定的JDK版本。这是因为不同的应用程序可能对JDK的...

    Windows server 2019安装JDK.docx

    Windows Server 2019 安装 JDK 详细指南 Windows Server 2019 是一款功能强大且稳定的操作系统,对于企业级应用和开发...通过遵循这些步骤,可以轻松安装 JDK 并配置环境变量,以便在企业级应用和开发环境中使用 JDK。

Global site tag (gtag.js) - Google Analytics