监听器详解
- ServletContextAttributeListener 用来感知ServlerContext对象属性变化,比如添加或删除属性变化
- ServletContextListener 用来感知ServlerContext对象的创建和销毁的
- ServletRequestListener 可以用来监听感知ServletRequest对象的创建和销毁的
- ServletRequestAttributeListener 用来感知ServletRequest属性变化,如何添加或删除属性还是替换
- HttpSessionListener监听session的变化,常用于统计在线人数
- HttpSessionAttributeListener用来监听Session属性变化
- HttpSessionBindingListener 用来监听把一个数据绑定到Session对象 感知监听器
- HttpSessionActivationListener用来监听session绑定的对象钝化(把对象持久化磁盘)
作用
通过监听器,我们可以监听某个对象,如果被监听的对象发生某些改变,那么我们的监听器就可以立即知道,从而可以做出一些处理操作。
在整个Servlet规范中,主要定义了【8类监听器】,但是在实际开发中,使用最多的可能就只有下面这三个,分别是:
- 用于监听ServletContext上下文的监听器。
- 用于监听HttpSession会话的监听器。
- 用于监听ServletRequest请求对象的监听器。
Servlet组件中,可以利用上面三个监听器实现【对象创建和销毁】、【属性变化】、【session状态变化】的监听功能。
- 对象的创建和销毁
- 属性变化(添加属性、移除属性、替换属性)
- session状态变化(绑定session、解绑session,不常用)