在上一篇中我们谈到了Tomcat中的观察者模式,这里标题中的“二”并不表示我们要继续上一篇的相关内容,仅仅表示我们要讨论Tomcat中的另外一个观察者模式。
上一篇中的观察者模式用来报告生命周期事件(Lifecycle Event),这里的这个观察者模式用来报告容器事件(Container Event),这两者是完全不同的。
具体的结构图如下:
和上一篇相比这里和GoF的描述是完全一致的,由Subject参与者负责管理Observer参与者。不过这里也实现了复用,这种复用是通过继承完成的。所有的管理逻辑都在ContainerBase。
关于模式的相关问题可以参阅面向对象设计(Object-Oriented Design)。如果您对这里的内容感兴趣可以和我们联系!