软件编程讲究高内聚低耦合,也就是领域边界问题,细想一下前边几种场景前后有没有必然的同步依赖关系,再抽象一点,每一个业务场景、每一个操作都有自己的业务主体和操作主线,也就是说理论上只关心自己领域边界内的操作完成...),没有什么好分析的,就是在合适的时机将观察者添加到被观察者容器中,被观察者发生变更后调用notifyObservers方法把容器中的观察者都执行一遍。...3.优缺点
优点: 实现简单,PropertyChangeSupport封装了监听器容器和对一些复杂操作做了透明化处理
缺点: 需要手动将监听器添加到PropertyChangeSupport维护的容器中...,不阻塞事件发布者逻辑
@Subscribe注解,该注解作用于方法,将该方法连同宿主类封装成监听器,在事件发布后,事件主线从监听器容器中根据事件类型获取对应的监听器列表并执行逻辑
?...2.原理
spring事件驱动的原理大致从两个点分析,@EventListener解析成监听器逻辑和事件发送逻辑。