监听器的使用:
       作用:
            监听作用域对象request、session、application的创建、销毁和内容的改变
       使用:
           创建一个实现了指定接口的类
               监听request----->ServletRequestListener    监听request对象的创建和销毁
                   requestInitialized(ServletRequestEvent sre)//创建
                   requestDestroyed(ServletRequestEvent sre)//销毁

注意:                
                             形参可以获取监听的request对象
                                 sre.getRequest()
               监听request----->ServletRequestAttributeListener 监听request作用域数据的变更
                      attributeAdded(ServletRequestAttributeEvent arg0)
                      attributeRemoved(ServletRequestAttributeEvent arg0)
                      attributeReplaced(ServletRequestAttributeEvent arg0)

注意:
                             形参可以获取被监听的数据
                                 arg0.getName() 获取监听数据的键
                                 arg0.getValue()获取监听数据的值
              监听session-----》HttpSessionListener   监听session对象的创建和销毁
                      sessionCreated(HttpSessionEvent arg0)  //创建
                      sessionDestroyed(HttpSessionEvent arg0) //销毁

        注意:arg0.getSession()
               监听session-----》HttpSessionAttributeListener   监听session作用域数据的变更
                      attributeAdded(HttpSessionBindingEvent arg0)
                      attributeRemoved(ServletRequestAttributeEvent arg0) 
                      attributeReplaced(HttpSessionBindingEvent arg0) 
          注意:形参可以获取被监听的数据

          arg0.getName()  获取数据的名称

          arg0.getValue() 获取数据的值
               监听application--->ServletContextListener        监听application对象的初始化和销毁
                      contextInitialized(ServletContextEvent arg0) //创建    服务器启动
                     contextDestroyed(ServletContextEvent arg0)     //销毁    服务器关闭
                     注意:
                         形参可以获取当前application对象
                             arg0.getServletContext(); 获取监听application对象
             监听application---->ServletContextAttributeListener 监听数据的变更
                     attributeAdded(ServletContextAttributeEvent arg0)    
                     attributeRemoved(ServletContextAttributeEvent arg0) 
                     attributeReplaced(ServletContextAttributeEvent arg0)
                         注意:
                             形参可以获取当前监听的数据
                                 arg0.getName()  获取数据的键名
                                 arg0.getValue()  获取数据的值

在web.xml中配置监听器类
         <listener>
                    <listener-class>com.bjsxt.listener.MyListener</listener-class>
       </listener>

  案例:

    统计网站在线人数

    统计网站浏览次数

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

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

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

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

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

  3. JSP的Servlet监听器

    JSP的Servlet监听器 来源: http://blog.csdn.net/phoenix_17th/article/details/3868670 Servlet 监听器用于监听一些重要事件的发 ...

  4. Java进阶(十三)servlet监听器

    servlet监听器 Listener是Servlet的监听器,它可以监听客户端的请求.服务端的操作等.通过监听器,可以自动激发一些操作,比如监听在线的用户的数量.当 增加一个HttpSession时 ...

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

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

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

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

  7. Servlet监听器的使用

    Servlet监听器的使用 制作人:全心全意 在Servlet技术中已经定义了一些事件,并且可以针对这些事件来编写相关的事件监听器,从而对事件做出相应的处理.例如,想要在Web应用程序启动和关闭时来执 ...

  8. Servlet监听器——实现在线登录人数统计小例子

    一.概念 servlet监听器的主要目的是给web应用增加事件处理机制,以便更好的监视和控制web应用的状态变化,从而在后台调用相应处理程序. 二.监听器的类型 1.根据监听对象的类型和范围,分为3类 ...

  9. 【Servlet】Servlet监听器

    一.Servlet监听器的概念 Servlet监听器是Servlet规范中定义的一种特殊类,用于监听ServletContext.HttpSession和ServletRequest等域对象的创建与销 ...

  10. Servlet监听器详解及举例

    监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行. 监听器原理 监听原理 1.存在事件源 ...

随机推荐

  1. POJ-2386.Lakecounting(DFS求连通块)

    本题是一道连通块的入门题,用来练手,后续还会更新连通块的题目. 本题大意:一个n * m 的陆地上面有很多水洼,让你统计水洼的个数并输出. 本题思路:按照顺序遍历陆地,如果发现水洼就将它的八连块都进行 ...

  2. c# 记录内容到txt文件

    string a= content;//采样结果 if (!File.Exists("e:\\newfile\\newtxt.txt")) { new FileStream(&qu ...

  3. Angular之模版引用变量

    A template reference variable is often a reference to a DOM element within a template. It can also b ...

  4. Day 04 列表,元祖,range

    列表: why: 1.字符串取值费劲 2.对字符串做任何操作,取出来的都是字符串 3.字符串有长度限制 基于以上原因,python提供了另一个数据类型,list 容器类数据类型. 列表页脚数组,可以存 ...

  5. python脚本计算斐波那契数列

    有一列数组[1,1,2,3,5,8,,,,,],计算第n个数字的大小 def abstract(n): fibs = [1, 1] for i in range(n-2): fibs.append(f ...

  6. rosrun和roslaunch

    rosrun allows you to run an executable(可执行) in an arbitrary(任意) package without having to cd (or ros ...

  7. php ActiveMQ的安装与使用

    一.ActiveMQ是什么?ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线.支持多种语言客户端(Java,C,C++,C#,Python,Ruby,Perl,PHP), 支持多种 ...

  8. Struts2把数据封装到集合中之封装到map中

    struts框架封装数据可以封装到集合中也可以封装到map中,该篇博客主要讲解将数据封装到map中. 1. 封装复杂类型的参数(集合类型 Collection .Map接口等) 2. 需求:页面中有可 ...

  9. Ado.net简单快捷帮助类

    using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; usin ...

  10. msyql [note] mysqld (mysqld 5.6.40) starting as process xxxx...

    my.ini有2个配置一个是客户端[client],一个是服务器端[mysqld] 如果把2个都设置为utf8,那么中文会显示乱码,或者无法插入中文 而把客户端设置为gbk,把服务器端设置为utf8就 ...