Servlet监听器:Servlet规范中定义的一种特殊类,它用于监听Web应用程序中的ServletContext、HttpSession和ServletRequest等域对象的创建与销毁事件,以及监听这些域对象中的属性发生修改的事件。

ServeltContextListener接口: 其用于监听ServletContext对象的创建和销毁事件。

当ServletContext对象被创建时,激发contextInitialized(ServletContextEvent sce)方法

当ServletContext对象被销毁时,激发contextDestroyed(ServletContextEvent sce)方法

package com.wangzhu.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener; /**
* Servlet监听器:Servlet规范中定义的一种特殊类,它用于监听Web应用程序中的ServletContext、<br/>
* HttpSession和ServletRequest等域对象的创建与销毁事件,以及监听这些域对象中的属性发生修改的事件。<br/>
*
* ServeltContextListener接口<br/>
* 其用于监听ServletContext对象的创建和销毁事件。<br/>
* 当ServletContext对象被创建时,激发contextInitialized(ServletContextEvent sce)方法<br/>
* 当ServletContext对象被销毁时,激发contextDestroyed(ServletContextEvent sce)方法<br/>
*
* Servlet的监听器Listener<br/>
* 随Web应用的启动而启动,只初始化一次,并随Web应用的停止而销毁<br/>
*
* @author wangzhu
* @date 2015-2-1上午12:20:42
*
*/
public class MyServletContextListener implements ServletContextListener { /**
* 应用监听器的初始化方法
*/
@Override
public void contextInitialized(ServletContextEvent sce) {
System.out.println("MyServletContextListener contextInitialized");
} /**
* 应用监听器的销毁方法
*/
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("MyServletContextListener contextDestroyed");
} }

HttpSessionListener接口:其用于监听HttpSession对象的创建和销毁
当创建一个Session时,激发sessionCreated(HttpSessionEvent se)方法
当销毁一个Session时,激发sessionDestroyed(HttpSessionEvent se)方法

package com.wangzhu.listener;

import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener; /**
* HttpSessionListener接口<br/>
* 其用于监听HttpSession对象的创建和销毁<br/>
* 当创建一个Session时,激发sessionCreated(HttpSessionEvent se)方法<br/>
* 当销毁一个Session时,激发sessionDestroyed(HttpSessionEvent se)方法<br/>
*
* @author wangzhu
* @date 2015-2-1下午3:48:10
*
*/
public class MyHttpSessionListener implements HttpSessionListener { @Override
public void sessionCreated(HttpSessionEvent se) {
System.out.println("MyHttpSessionListener sessionCreated");
} @Override
public void sessionDestroyed(HttpSessionEvent se) {
System.out.println("MyHttpSessionListener sessionDestroyed");
} }

ServletRequestListener接口: 其用于监听ServletRequest对象的创建和销毁
当创建一个ServletRequest时,激发requestInitialized(ServletRequestEvent sre)方法
当销毁一个ServletRequest时,激发requestDestroyed(ServletRequestEvent sre)方法

package com.wangzhu.listener;

import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener; /**
* ServletRequestListener接口<br/>
*
* 其用于监听ServletRequest对象的创建和销毁<br/>
* 当创建一个ServletRequest时,激发requestInitialized(ServletRequestEvent sre)方法<br/>
* 当销毁一个ServletRequest时,激发requestDestroyed(ServletRequestEvent sre)方法<br/>
*
* @author wangzhu
* @date 2015-2-1下午3:51:31
*
*/
public class MyServletRequestListener implements ServletRequestListener { @Override
public void requestDestroyed(ServletRequestEvent sre) {
System.out.println("MyServletRequestListener requestDestroyed");
} @Override
public void requestInitialized(ServletRequestEvent sre) {
System.out.println("MyServletRequestListener requestInitialized");
} }

Web.xml中配置如下:

    <!--ServletContext监听器-->
<listener>
<listener-class>com.wangzhu.listener.MyServletContextListener</listener-class>
</listener> <!--HttpSession监听器-->
<listener>
<listener-class>com.wangzhu.listener.MyHttpSessionListener</listener-class>
</listener> <!--ServletRequest监听器-->
<listener>
<listener-class>com.wangzhu.listener.MyServletRequestListener</listener-class>
</listener>

Web中的监听器【Listener】的更多相关文章

  1. 【Spring】1、Spring 中的监听器 Listener

    一.接口 1.EventListener 2.HttpSessionAttributeListener   继承EventListener接口 HttpSessionAttributeListener ...

  2. Web中的监听器【Listener】与过滤器【Filter】 实例

    监听器实例: package com.gwssi.listener; import javax.servlet.http.HttpSession; import javax.servlet.http. ...

  3. EL&Filter&Listener:EL表达式和JSTL,Servlet规范中的过滤器,Servlet规范中的监听器,观察着设计模式,监听器的使用,综合案例学生管理系统

    EL&Filter&Listener-授课 1 EL表达式和JSTL 1.1 EL表达式 1.1.1 EL表达式介绍 *** EL(Expression Language):表达式语言 ...

  4. [09] 监听器 Listener

    1.事件 1.1 事件的概念 在Servlet中有一个概念叫做监听,顾名思义,就是监听某种事件是否发生.就如你是一家娱乐媒体公司的老板,你派出狗仔队去跟着某些明星,比如你想了解他们的绯闻,或者活动进展 ...

  5. 监听器(Listener)学习(二)

    一.监听域对象中属性的变更的监听器 域对象中属性的变更的事件监听器就是用来监听 ServletContext, HttpSession, HttpServletRequest 这三个对象中的属性变更信 ...

  6. JavaWeb_初识监听器Listener

    监听器(listener):对项目起到监听的作用,它能感知到包括request(请求域),session(会话域)和applicaiton(应用程序)的初始化和属性的变化 监听器是Servlet规范中 ...

  7. Web中Listener的创建

    使用Listener只需要两个步骤: 定义Listener实现类. 通过Annotation或在web.xml文件中配置Listener 实现Listener类 监听不同Web事件的监听器不相同,常用 ...

  8. javaweb学习总结(四十七)——监听器(Listener)在开发中的应用

    监听器在JavaWeb开发中用得比较多,下面说一下监听器(Listener)在开发中的常见应用 一.统计当前在线人数 在JavaWeb应用开发中,有时候我们需要统计当前在线的用户数,此时就可以使用监听 ...

  9. javaWeb学习总结(11)- 监听器(Listener)在开发中的应用

    监听器在JavaWeb开发中用得比较多,下面说一下监听器(Listener)在开发中的常见应用 一.统计当前在线人数 在JavaWeb应用开发中,有时候我们需要统计当前在线的用户数,此时就可以使用监听 ...

随机推荐

  1. Linux C 程序 线程(18)

    线程控制 1.线程与进程的关系 线程:计算机中独立运行的最小单位. 在用户角度:多个线程是同时执行的. 操作系统角度:各个线程交替执行 以上只针对单核CPU的情况 在多核CPU主机上,多个线程可以同时 ...

  2. nginx安装总结

    对于nginx作为负载均衡服务器时的安装需要安装rewrite模块需要的pcre()库,gzip模块需要zlib库,ssl模块需要openssl库,对此依赖安装有很多种处理方式,以下简单总结: 通过源 ...

  3. windbg调试.net程序

    1. 解决线上.NET应用程序的如下问题: 崩溃 CPU高 程序异常 程序Hang死 2. 安装WinDbg: http://msdn.microsoft.com/en-us/windows/hard ...

  4. jQuery基础选择器

    attr()方法的功能是设置或获取元素的某项属性值. attr("disabled", "true”)表示使该功能不可用. #id 选择器 $("#my_id& ...

  5. python 获取 mac 地址 的代码

    python 获取 mac 地址 的例子,有需要的朋友可以参考下. #!/bin/python import os import re def GetMac():     if os.name ==  ...

  6. php中fopen函数用法详解(打开文件)

    介绍下php中的fopen函数. 1.resource  fopen(string  $filename, string $mode [,bool $use_include_path [, resou ...

  7. java 语法糖

    package syntax.autoCase; import java.util.Arrays; import java.util.List; public class autoCase { pub ...

  8. 关于不同进制数之间转换的数学推导【Written By KillerLegend】

    关于不同进制数之间转换的数学推导 涉及范围:正整数范围内二进制(Binary),八进制(Octonary),十进制(Decimal),十六进制(hexadecimal)之间的转换 数的进制有多种,比如 ...

  9. 查找指定表的字段not null约束,并生成删除Sql

    SElECT 'ALTER TABLE '+OBJECT_NAME(c.parent_obj)+' DROP CONSTRAINT '+ c.name FROM sys.sysconstraints ...

  10. Oracle数据库的创建、数据导入导出

    如何结合Sql脚本和PL/SQL Developer工具来实现创建表空间.创建数据库.备份数据库.还原数据库等操作,然后实现Oracle对象创建.导入数据等操作,方便我们快速了解.创建所需要的部署Sq ...