`
xieyan30
  • 浏览: 49134 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

spring事件(一)

 
阅读更多

在事件体系中,有5个重要概念:

事件源 ⇒ 事件 ⇒ 时间广播器 ⇒ 事件监听器注册表(事件监听器)。

事件监听器注册表是保存事件监听器的地方。

 

spring的事件类结构

事件类:ApplicationEvent(Object source)ApplicationEvent 继承了java.util.EventObject,

有两个子类:ApplicationContextEvent和RequestHandledEvent。

ApplicationContextEvent有四个子类:ContextStartedEvent(容器启动),                                                        

                                                     ContextClosedEvent(容器关闭),                                                        

                                                     ContextRefreshedEvent(容器刷新),                                                        

                                                     ContextStoppedEvent(容器停止)。

RequestHandledEvent与web应用相关的事件,只有在web.xml中定义了DispatcherServlet时才会产生该事件。有两个子类:ServletRequestHandledEvent和PortletRequestHandledEvent。

 

事件监听器接口:ApplicationListener(接口)

ApplicationListener继承了java.util.EventListener接口,

       只提供了一个方法onApplicationEvent(ApplicationEvent event),在该方法中编写事件的响应处理逻辑。SmartApplicationListener接口继承了ApplicationListener,是Spring3.0新增的。定义了2个方法:        

        boolean supportsEventType(Class<? extends ApplicationEvent > eventType):指定监听器支持哪种类

                       型的容器事件,只对这种类型的事件进行响应。        

        booleansupportsSourceType(Class<?> sourceType):指定监听器仅对哪种事件源作出响应。

 

事件广播器:ApplicationEventMulticaster接口)

spring定义了事件广播器的接口,并且提供了实现类。

类SimpleApplicationEventMulticaster继承了抽象类AbstractApplicationEventMulticaster,

抽象类AbstractApplicationEventMulticaster实现了接口ApplicationEventMulticaster。            

0
5
分享到:
评论

相关推荐

    spring事件的例子

    综上所述,Spring事件是基于观察者模式的一种设计模式实现,提供了发布-订阅式的事件处理能力,有助于构建松耦合的应用程序。通过创建自定义事件、发布事件、实现或注解监听器,我们可以有效地在系统组件之间传递...

    详解Spring事件驱动模型

    一、Spring事件机制的工作流程 1. 定义事件:创建自定义的事件类,继承自`ApplicationEvent`。例如,可以创建一个`CustomEvent`表示特定业务操作完成的事件。 2. 注册监听器:编写`ApplicationListener`接口的实现...

    spring 事件处理

    总之,Spring事件处理是Spring框架中的一个重要特性,它使得组件间的通信更为便捷,特别是在Spring MVC应用中,可以有效地实现业务逻辑与其他功能模块的交互。通过创建自定义事件、发布事件和注册监听器,我们可以...

    使用Spring事件机制实现异步的方法

    使用Spring事件机制实现异步的方法 Spring框架提供了一种事件机制,允许开发者将代码解耦合,实现松散耦合的设计理念。这里将详细介绍如何使用Spring事件机制实现异步的方法。 事件机制的实现主要包括三个部分:...

    Spring事件管理

    接下来,我们将深入探讨Spring事件管理的核心概念和实现方式。 首先,Spring事件是基于Java的观察者模式(Observer Pattern)实现的,它定义了主题(Subject)和观察者(Observer)之间的关系,当主题的状态发生...

    JAVA-spring学习资源之spring事件

    Spring事件是基于观察者模式实现的,它提供了一种在应用程序组件之间传递信息的方式,而无需这些组件之间有直接的依赖关系。这使得系统更加灵活和可扩展。 1、**Spring事件发布**: 在Spring中,事件通常是一个Java...

    Spring的配置以及事件注入

    总结起来,Spring的配置机制允许我们灵活地定义和管理对象,而事件注入则提供了一种在不同组件间通信的有效途径。了解并熟练掌握这些核心概念,能帮助开发者更好地设计和构建健壮、松耦合的Java应用程序。通过...

    spring的Applicationcontext对事件的监听,实现类似MQ的效果

    在Spring框架中,`ApplicationContext`不仅是一个容器,用于管理Bean的生命周期和依赖注入,它还提供了事件发布和监听的功能。这个特性使得Spring应用能够实现组件间的异步通信,类似于消息队列(MQ)的工作模式。...

    spring 事件监听 3种方式

    本篇文章将详细介绍Spring事件监听的三种方式:基于接口的监听器、基于类的监听器以及基于注解的监听器。 ### 1. 基于接口的监听器(ApplicationListener) **接口定义:** Spring提供了`ApplicationListener`接口...

    spring事件机制

    在Spring事件机制中,`ApplicationContext`扮演了事件总线的角色,它负责维护所有已注册的监听器,并在事件发布时分发事件给这些监听器。这种设计模式使得Spring应用的组件间通信更加灵活,同时也降低了组件之间的...

    event.rar-Spring事件监听机制

    Spring事件(ApplicationEvent)是Spring框架内建的一种轻量级消息传递机制。它基于Java的观察者模式,其中事件是被观察的对象,而事件监听器是注册来接收这些事件的对象。 2. **事件类与事件发布** 当一个组件...

    深入探索Spring事件监听机制:技术与应用

    Spring事件监听机制是Spring框架中的一个重要特性,它基于经典的观察者模式,允许应用程序组件之间进行松耦合的通信。在Spring中,事件监听机制由三部分组成:事件(ApplicationEvent)、事件监听器(Application...

    利用spring security控制同一个用户只能一次登陆

    标题中的“利用Spring Security控制同一个用户只能一次登录”是指在基于Spring Security的Web应用程序中实现单点登录(Single Sign-On, SSO)的功能,确保同一时间只有一个设备或浏览器会话可以登录同一用户的账户。...

    spring-cloud项目_springcloud_springcloud项目_springcloud_spring-clou

    6. **Spring Cloud Bus**: 控制总线,用于广播事件到所有的服务实例,例如配置更新。它通常与 Spring Cloud Config 结合使用,实现在运行时的配置更新。 7. **Ribbon**: Ribbon 是一个客户端负载均衡器,它提供了...

    第十七章 Spring 事件(Events)1

    本章将深入探讨Spring事件(Events)的相关知识点。 首先,Java事件/监听器编程模型是基于观察者模式的,该模式定义了对象之间的一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被...

    spring培训笔记第一天

    ### Spring培训笔记第一天:深入理解Spring框架的核心概念与实践 #### Spring框架简介 Spring框架是企业级应用开发中广泛使用的轻量级框架,它通过提供一系列的开发模式和最佳实践来简化Java应用的开发过程。...

    Spring Cloud之一 Spring Cloud简介

    2. Spring Cloud Bus:用于在分布式系统中传播状态变化(比如配置文件的修改)的事件总线,可以与Spring Cloud Config配合使用,实现配置的热更新。 3. Spring Cloud Netflix:集成了Netflix提供的多个组件,例如:...

    spring第一次课笔记

    Spring框架是Java开发中广泛应用的一个开源框架,以其强大的依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)功能而著名。本笔记将详细解析Spring框架的基础知识,...

    Spring Cloud实战 _springcloud实战_springcloud_

    Spring Cloud Stream则关注消息驱动的应用程序,它提供了一种声明式的方式来消费和生产消息,适用于事件驱动的微服务架构。 在实际开发中,Spring Cloud Data Flow是用于数据流和任务管理的工具,它可以管理和部署...

    spring笔试题选择和简答题和springboot+cloud选择题和简答题

    Spring Boot 是一个基于 Java 的框架,用于构建独立的、生产级别的基于 Spring 的应用程序。Spring Cloud 是一个基于 Spring Boot 的微服务架构框架,提供了在分布式系统中服务发现、配置管理、熔断、智能路由、API ...

Global site tag (gtag.js) - Google Analytics