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

什么是观察者模式?

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

Spring的观察者模式

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

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

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

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

相关推荐
刘发财2 小时前
弃用html2pdf.js,这个html转pdf方案能力是它的几十倍
前端·javascript·github
牛奶4 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶4 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
皮皮林5515 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河5 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化
Kagol7 小时前
🎉OpenTiny NEXT-SDK 重磅发布:四步把你的前端应用变成智能应用!
前端·开源·agent
GIS之路8 小时前
ArcGIS Pro 中的 notebook 初识
前端
JavaGuide8 小时前
7 道 RAG 基础概念知识点/面试题总结
前端·后端
桦说编程8 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读