观察者模式属于行为型模式,也叫发布订阅模式,定义对象间的一种一对多的依赖的关系,当一个对象的状况发生改变时,所有的依赖就会对它的对象都得到一个通知并自动跟新。主要解决一个对象状态改变给其他对象的通知,缺点就是如果被观察者对象有很多的直接和间接观察者的通话通知很耗时,如果存在循环依赖的话可能会导致系统夫人崩溃。另外观察者无法知道目标对象具体是怎么发生变化的。
ServletContextListener能够监听ServletContext 对象的生命周期,实际上就是监听Web应用。当Servlet容器启动Web应对时调用contextinitialized方法,终止时调用contextDestroyed方法。