Web中的监听器【Listener】
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】的更多相关文章
- 【Spring】1、Spring 中的监听器 Listener
一.接口 1.EventListener 2.HttpSessionAttributeListener 继承EventListener接口 HttpSessionAttributeListener ...
- Web中的监听器【Listener】与过滤器【Filter】 实例
监听器实例: package com.gwssi.listener; import javax.servlet.http.HttpSession; import javax.servlet.http. ...
- EL&Filter&Listener:EL表达式和JSTL,Servlet规范中的过滤器,Servlet规范中的监听器,观察着设计模式,监听器的使用,综合案例学生管理系统
EL&Filter&Listener-授课 1 EL表达式和JSTL 1.1 EL表达式 1.1.1 EL表达式介绍 *** EL(Expression Language):表达式语言 ...
- [09] 监听器 Listener
1.事件 1.1 事件的概念 在Servlet中有一个概念叫做监听,顾名思义,就是监听某种事件是否发生.就如你是一家娱乐媒体公司的老板,你派出狗仔队去跟着某些明星,比如你想了解他们的绯闻,或者活动进展 ...
- 监听器(Listener)学习(二)
一.监听域对象中属性的变更的监听器 域对象中属性的变更的事件监听器就是用来监听 ServletContext, HttpSession, HttpServletRequest 这三个对象中的属性变更信 ...
- JavaWeb_初识监听器Listener
监听器(listener):对项目起到监听的作用,它能感知到包括request(请求域),session(会话域)和applicaiton(应用程序)的初始化和属性的变化 监听器是Servlet规范中 ...
- Web中Listener的创建
使用Listener只需要两个步骤: 定义Listener实现类. 通过Annotation或在web.xml文件中配置Listener 实现Listener类 监听不同Web事件的监听器不相同,常用 ...
- javaweb学习总结(四十七)——监听器(Listener)在开发中的应用
监听器在JavaWeb开发中用得比较多,下面说一下监听器(Listener)在开发中的常见应用 一.统计当前在线人数 在JavaWeb应用开发中,有时候我们需要统计当前在线的用户数,此时就可以使用监听 ...
- javaWeb学习总结(11)- 监听器(Listener)在开发中的应用
监听器在JavaWeb开发中用得比较多,下面说一下监听器(Listener)在开发中的常见应用 一.统计当前在线人数 在JavaWeb应用开发中,有时候我们需要统计当前在线的用户数,此时就可以使用监听 ...
随机推荐
- 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时)
今天忽然间发现远程连接别人数据库会出现 已成功与服务器建立连接,但是在登录前的握手期间发生错误. (provider: SSL Provider, error: 0 - 等待的操作过时) 这种情况 ...
- TCP连接,传输数据时的粘包问题讨论
第一个需要讨论的大概就是粘包问题了.因为这个是TCP的个性问题,UDP通信时不存在这个问题的.首先看一下什么叫粘包: 客户端采取与服务器的长连接方式建立通信(Open-Write/Read-Write ...
- grappelli美化django的admin页面
开始用admin时候,觉得它的页面实在...宁愿自己写modules,多费点时间 grappelli可以把admin变得非常美观,配置起来也很简单 第一步,先下载grappelli,搜索一下,wind ...
- require.js入门指南(二)
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- JMS消息头
一个消息对象分为三部分:消息头(Headers),属性(Properties)和消息体(Payload).对于StreamMessage和MapMessage,消息本身就有特定的结构,而对于TextM ...
- Java中main函数参数String args[] 和 String[] args 区别
其实没什么区别的:当初我也是这样的疑问,呵呵:非要说区别就看下面:执行效果上没有不同, 但在语法意义上略有不同. 比如, String与String[], 前者叫字符串类型而后者叫字符串数组类型. S ...
- boost安装
虽然很多Boost组件都只有头文件,不需要编译,但是有些Boost组件,如program_options.regex等还是需要编译生成库的.考虑到目前的程序需要用到program_options.re ...
- 【nodejs】 npm 注意事项
官网:https://www.npmjs.com/ 1.安装时要切换到nodejs根目录, 否则就会安装到安装时所在的目录 2.要有管理员权限(win),如需指定版本,如npm install ex ...
- Java Day 06
二维数组 定义: 格式1 int[][] arr = new int[3][2]; 格式2 int[][] arr = new int[3][];//每个一维数组初始化时为null 空指针异常 格式3 ...
- 使用IE10登录,URL出现SessionId的解决办法
问题:用户登入之后,URL会出现一长串字符,类似SessionId,把这一长串字符删除之后重新进入页面,页面又会自动地跳转到登录页面,所以,应该是Session没记住用户已经登录的信息. 网站环境: ...