来源: http://blog.csdn.net/phoenix_17th/article/details/3868670
Servlet
监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前、发生后可以做一些必要的处理。目前 Servlet2.4 和 JSP2.0
常用的有7个监听器接口,分为3类:

1.
Servlet上下文进行监听(Application级):

用于监听 ServletContext
对象的创建和删除以及属性的添加、删除和修改等操作,该监听器需要用到如下两个接口类:
(1)
ServletContextAttributeListener:监听对 ServletContext 属性的操作,比如增加、删除、修改

      attributeAdded(ServletContextAttributeEvent
e)            
添加属性时调用    

      attributeReplaced(ServletContextAttributeEvent
e)        修改属性时调用    

      attributeRemoved(ServletContextAttributeEvent
e)        删除属性时调用

(2)
ServletContextListener:监听对 ServletContext  对象的创建和删除

      contextInitialized(ServletContextEvent
sce)          初始化时调用    

      contextDestroyed(ServletContextEvent
sce)        销毁时调用,即当服务器重新加载时调用


2.
监听HTTP会话(Session级):

用于监听 HTTP 会话活动情况和 HTTP 会话中的属性设置情况,也可以监听
HTTP 会话的 active 和 passivate 情况等,该监听器需要用到如下多个接口类:
(1) HttpSessionListener:监听
HttpSession 的操作

      sessionCreate(HttpSessionEvent
se)         初始化时调用;

      sessionDestroyed(httpSessionEvent
se)    销毁时调用,即当用户注销时调用

(2)
HttpSessionActivationListener:用于监听 HTTP 会话的 active 和 passivate 情况

(3)
HttpSessionAttributeListener:监听 HttpSession 中的属性操作

      attributeAdded(HttpSessionBindingEvent
se)         添加属性时调用

      attributeRemoved(HttpSessionBindingEvent
se)    删除属性时调用

      attributeReplaced(HttpSessionBindingEvent
se)    修改属性时调用

(4) HttpSessionBindingListener

BindingListener有2个方法,valueBound(HttpSessinBindingEvent)和valueUnbount(HttpSessionBindingEvent)。

实现BindingListener接口的监听器在对象被绑定到session时触发valueBound事件,解除绑定时触发valueUnbound事件。

3.
对客户端请求进行监听(Requst级):

用于对客户端的请求进行监听是在 Servlet2.4
规范中新添加的一项新技术,使用的接口如下:
(1) ServletRequestListener 接口类

       requestDestroyed(ServletRequestEvent
e)       对销毁客户端进行监听,即当执行
request.removeAttribute("xxx") 时调用
      
requestInitialized(ServletRequestEvent
e)         对实现客户端的请求进行监听

(2)
ServletRequestAttributeListener 接口类
      
attributeAdded(ServletRequestAttributeEvent
e)         对属性添加进行监听

      
attributeRemoved(ServletRequestAttributeEvent
e)    对属性删除进行监听
      
attributeReplaced(ServletRequestAttributeEvent
e)    对属性替换进行监听

JSP的Servlet监听器的更多相关文章

  1. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  2. servlet监听器Listener(理论+例子)

    Listener采用了观察者模式(24种模式之一),Listener是servlet的监听器,他可以监听客户端的请求.服务器端的操作等, 通过监听器,可以自动激发一些操作.比如:监听在线用户数量 当增 ...

  3. 3 Servlet监听器

    作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 1. ServletConfig和ServletContext 1.1 ServletConfig和Servle ...

  4. [原创]java WEB学习笔记47:Servlet 监听器简介, ServletContext(Application 对象), HttpSession (Session 对象), HttpServletRequest (request 对象) 监听器,利用listener理解 三个对象的生命周期

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  5. 【Servlet】1、Servlet监听器及相关接口

    Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前.发生后可以做一些必要的处理. 接口: 目前Servlet2.4和JSP2.0总共有8个监听器接口和6个Event类,其中Ht ...

  6. JSP和Servlet那些事儿系列--HTTPS

    原文:http://qingkangxu.iteye.com/blog/1614053 <JSP和Servlet那些事儿 >系列文章旨在阐述Servlet(Struts和Spring的MV ...

  7. Servlet监听器统计在线人数

    监听器的作用是监听Web容器的有效事件,它由Servlet容器管理,利用Listener接口监听某个执行程序,并根据该程序的需求做出适应的响应. 例1 应用Servlet监听器统计在线人数. (1)创 ...

  8. jsp、Servlet的面试题

    3. 谈谈Servlet的生命周期 当接收到请求的时候,容器察看对应的Servlet对象是否存在,如果不存在,需要加载Servetl,实例化Servlet,调用init方法进行初始化.如果已经存在,根 ...

  9. jsp、servlet笔记

    1.init    初始化Jsp&Servlet方法   destroy 销毁Jsp&Servlet之前的方法   service 对用户请求生成响应的方法2.Jsp文件必须在jsp服 ...

随机推荐

  1. 101+ Manual and Automation Software Testing Interview Questions and Answers

    101+ Manual and Automation Software Testing Interview Questions and Answers http://www.softwaretesti ...

  2. 《more effective c++》条款26 限制类对象的个数

    问题: 如何限制类对象的个数?比如1个,10个等等. 方法(1): 将类的构造函数定义为private,那么就无法实例化这个类了.但是如何创建1个对象出来?方法有2种: 1.声明一个友元函数,那么在友 ...

  3. yii 隐藏index.php

    首先,开启apache的rewrite模块 去掉rewrite前的#,如下所示 LoadModule rewrite_module modules/mod_rewrite.so 接着,在yii的ind ...

  4. Xen虚拟机磁盘镜像模板制作(四)—CentOS 7

    在<Xen虚拟机磁盘镜像模板制作(三)—CentOS 7>一文中,我们已经成功制作出了 CentOS7 磁盘镜像.下面我们说明下如何通过它来生成目标虚拟机,同时测试下之前制作好的虚拟机磁盘 ...

  5. Win下循环进入目录启动执行某任务

    cd tldlq for /D %%s in (*) do ( cd %%s start "" LoginGate.exe start "" GameGate. ...

  6. SM30维护视图添加按钮

    转自http://blog.csdn.net/tsj19881202/article/details/7517232 遇到某需求,要求维护sm30的视图时,能加上排序按钮. 基本参考: http:// ...

  7. SAP自定义打印机纸张

    1 执行Spad,->点击"完全管理"->点击"设备类型" 2 点击"页格式" 3 新增两个页格式,  点击 更改->创建 ...

  8. 第三课,T语言数据类型(版本TC5.0)

    数据类型 TC综合开发工具里使用的是可变类型,就是在程序执行过程中,TC综合开发工具会自动把数据转换为需要的类型,转换失败会出现相应的提示但是在一些特殊的场景下,是需要做类型强制处理,那么这时就需要使 ...

  9. HTTP详解(2)

    HTTP详解(2)-请求.响应.缓存 分类: 网络知识2013-03-17 16:45 1969人阅读 评论(0) 收藏 举报   目录(?)[+]   1. HTTP请求格式 做过Socket编程的 ...

  10. UVA-11235 Frequent values (RMQ)

    题目大意:在一个长度为n的不降序列中,有m次询问,每次询问(i,j)表示在区间(i,j)中找出出现次数最多的元素的出现次数. 题目分析:因为序列有序,可以将序列分段,并且记录每段的元素个数.每一个元素 ...