简单了解观察者模式(发布 - 订阅模式)

什么是观察者模式?

观察者根据主题类的内部状态变化来改变自身状态,简单来说就是观察者订阅了主题类,当主题类发布一些消息,观察者就会收到消息,然后做出反应。

Spring的观察者模式

Spring用了监听器(观察者)来完成观察者模式,有两种方式:

  • 通过实现ApplicationListener,覆写onApplicationEvent()方法

  • 或者在方法使用注解@EventListener(ApplicationEvent.class)来完成事件监听

ApplicationContext底层用SimpleApplicationEventMulticaster发布事件(主题类内部状态变化)的时候,会同步通知这些监听器(如果设置了线程池则异步发送),监听器如果发现自己感兴趣的消息,就会进行相应的处理。

相关推荐
心随雨下9 小时前
typescript中Triple-Slash Directives如何使用
前端·javascript·typescript
s***35309 小时前
Spring Boot3.x集成Flowable7.x(一)Spring Boot集成与设计、部署、发起、完成简单流程
java·spring boot·后端
自在极意功。9 小时前
AJAX 深度详解:从基础原理到项目实战
前端·ajax·okhttp
s***4539 小时前
SpringBoot返回文件让前端下载的几种方式
前端·spring boot·后端
海上彼尚9 小时前
[逆向] 1.本地登录爆破
前端·安全
什么时候吃饭9 小时前
vue2、vue3父子组件嵌套生命周期执行顺序
前端·vue.js
2501_940943919 小时前
体系课\ Python Web全栈工程师
开发语言·前端·python
q***06479 小时前
SpringSecurity相关jar包的介绍
android·前端·后端
低保和光头哪个先来9 小时前
场景2:Vue Router 中 query 与 params 的区别
前端·javascript·vue.js·前端框架
rafael(一只小鱼)9 小时前
AI运维开发平台学习
java·开发语言