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. String 两种实例化方式的区别

    package com.java1234.chap03.sec08; public class Demo3 { public static void main(String[] args) { //1 ...

  2. android Timer and TImerTask

    android Timer and TImerTask Caused by: java.lang.IllegalStateException: TimerTask is scheduled alrea ...

  3. jQuery EasyUI 数据网格 - 启用行内编辑(转自http://www.runoob.com/jeasyui/jeasyui-datagrid-datagrid12.html)

    可编辑的功能是最近添加到数据网格(datagrid)的.它可以使用户添加一个新行到数据网格(datagrid).用户也可以更新一个或多个行.本教程向您展示如何创建一个数据网格(datagrid)和内联 ...

  4. Mysql支持中文全文检索的插件mysqlcft-应用中的问题

    MySQL目前版本的全文检索没有对中文很好的支持,但可以通过安装mysqlcft插件来实现,具体的安装使用方法:http://blog.s135.com/post/356/ mysqlcft的官方网站 ...

  5. Spannable相关方法

    实现文本链接 其中tv是TextView类型的控件.只需写java代码即可实现链接,无需在xml文件中进行其他的设置. SpannableString spanTxt = new SpannableS ...

  6. DataSnap中连接池的应用

    当开发人员开始创建Delphi的DataSnap应用时很常见的数据库连接定义方式是每个数据模块建立一个连接.这样做将产生大量的数据库连接,并产生很多问题.从Delphi XE开始,EMB提供了Sess ...

  7. SqlServer ,storedprocedure操作

    USE [Role] GO /*Create a table*/ IF OBJECT_ID ('dbo.Users', 'U') IS NOT NULL DROP TABLE Users GO CRE ...

  8. Use Sandcastle Help File Builder to generate help document

    http://shfb.codeplex.com/ Note: If the the help file contains the text "[Missing <param> ...

  9. 把数组排成最小的数/1038. Recover the Smallest Number

    题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323.   Give ...

  10. platform

    作者yuanlulu httpblogcsdnnetyuanlulu版权没有但是转载请保留此段声明 第1章platform驱动管理机制 platform_device 数据结构 注册流程 platfo ...