美文网首页
ApplicationEventMulticaster接口

ApplicationEventMulticaster接口

作者: engineer_tang | 来源:发表于2022-07-28 11:02 被阅读0次

由对象实现的接口,这些对象可以管理许多ApplicationListener对象并向其发布事件。
一个org.springframework.context.ApplicationEventPublisher,通常是org.springframework.context.ApplicationContext可以使用ApplicationEventMulticaster作为实际发布事件的委托。

接口定义如下:

public interface ApplicationEventMulticaster {

    void addApplicationListener(ApplicationListener<?> listener);

    void addApplicationListenerBean(String listenerBeanName);

    void removeApplicationListener(ApplicationListener<?> listener);

    void removeApplicationListenerBean(String listenerBeanName);

    void removeAllListeners();

    void multicastEvent(ApplicationEvent event);

    void multicastEvent(ApplicationEvent event, @Nullable ResolvableType eventType);

}

1. 方法说明

1.1 addApplicationListener方法

添加一个侦听器以通知所有事件。

1.2 addApplicationListenerBean方法

添加一个侦听器bean以通知所有事件。

1.3 removeApplicationListener方法

从通知列表中删除侦听器。

1.4 removeApplicationListenerBean方法

从通知列表中删除侦听器bean。

1.5 removeAllListeners方法

删除在此multicaster注册的所有侦听器。
在remove调用之后,在注册新的侦听器之前,multicaster不会对事件通知执行任何操作。

1.6 multicastEvent方法

将给定的应用程序事件多播到适当的侦听器。
如果可能,考虑使用multicastEvent(ApplicationEvent,ResolvableType),因为它可以更好地支持基于泛型的事件。

2. 抽象类之AbstractApplicationEventMulticaster

类图如下:


image.png

ApplicationEventMulticaster接口的抽象实现,提供了基本的侦听器注册工具。
默认情况下不允许同一侦听器的多个实例,因为它将侦听器保留在链接集中。用于保存ApplicationListener对象的集合类可以通过“collectionClass”bean属性重写。
实现ApplicationEventMulticaster的实际multicastEvent方法留给子类。SimpleApplicationEventMulticaster简单地将所有事件多路广播到所有注册的侦听器,并在调用线程中调用它们。在这些方面,替代实现可能更复杂。

3. 实现类之SimpleApplicationEventMulticaster

类图如下:


image.png

相关文章

  • ApplicationEventMulticaster接口

    由对象实现的接口,这些对象可以管理许多ApplicationListener对象并向其发布事件。一个org.spr...

  • 接口接口接口

    发现很多朋友对于接口都很纠结,阐述一下个人对接口的理解。 接口分为很多种类型,程序语言内部接口 移动端和服务端接口...

  • Android常用接口

    不知名接口 头条接口: 科技接口: 财经接口: 军事接口: 体育接口: 房产接口: 足球接口: 娱乐接口: 电影接...

  • 第十八天 微信微博天气接口

    分享接口 微信接口 微博接口 天气接口 mob接口

  • 接口测试概述

    接口(interface)的概念 常见接口名词 接口测试: 接口测试目的: 接口测试的重要性: 接口测试流程 接口...

  • 接口测试

    接口测试概念: 接口:接口是为了提供一种服务 所有的接口统称为API,接口分为内部接口和外部接口 外部接口:测试被...

  • 接口

    接口 接口类型 空接口 接口嵌套 接口断言 type关键字

  • 线程池原理

    Callable 接口 Runnable 接口 Future接口 RunnableFuture 接口 Future...

  • JMeter-一个接口的返回值作为输入传给其他接口

    背景: 在用JMeter写接口case,遇到一种情况,接口1查看列表接口,接口2查看详情接口,接口2需要传入接口1...

  • 用户操作接口

    登陆 接口地址 获取列表 接口地址 删除 接口地址 批量删除 接口地址 编辑用户 接口地址 添加用户 接口地址

网友评论

      本文标题:ApplicationEventMulticaster接口

      本文链接:https://www.haomeiwen.com/subject/crmxwrtx.html