JSP的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监听器的更多相关文章
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- servlet监听器Listener(理论+例子)
Listener采用了观察者模式(24种模式之一),Listener是servlet的监听器,他可以监听客户端的请求.服务器端的操作等, 通过监听器,可以自动激发一些操作.比如:监听在线用户数量 当增 ...
- 3 Servlet监听器
作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 1. ServletConfig和ServletContext 1.1 ServletConfig和Servle ...
- [原创]java WEB学习笔记47:Servlet 监听器简介, ServletContext(Application 对象), HttpSession (Session 对象), HttpServletRequest (request 对象) 监听器,利用listener理解 三个对象的生命周期
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 【Servlet】1、Servlet监听器及相关接口
Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前.发生后可以做一些必要的处理. 接口: 目前Servlet2.4和JSP2.0总共有8个监听器接口和6个Event类,其中Ht ...
- JSP和Servlet那些事儿系列--HTTPS
原文:http://qingkangxu.iteye.com/blog/1614053 <JSP和Servlet那些事儿 >系列文章旨在阐述Servlet(Struts和Spring的MV ...
- Servlet监听器统计在线人数
监听器的作用是监听Web容器的有效事件,它由Servlet容器管理,利用Listener接口监听某个执行程序,并根据该程序的需求做出适应的响应. 例1 应用Servlet监听器统计在线人数. (1)创 ...
- jsp、Servlet的面试题
3. 谈谈Servlet的生命周期 当接收到请求的时候,容器察看对应的Servlet对象是否存在,如果不存在,需要加载Servetl,实例化Servlet,调用init方法进行初始化.如果已经存在,根 ...
- jsp、servlet笔记
1.init 初始化Jsp&Servlet方法 destroy 销毁Jsp&Servlet之前的方法 service 对用户请求生成响应的方法2.Jsp文件必须在jsp服 ...
随机推荐
- 第一次sprint团队贡献分改
201306114322 邵家文 50分 201306114319 陈俊金 10分 201306114320 李新 10分 201306114324 朱浩龙 10分
- Objective-C--- 多态 、 协议
1 编写交通工具程序 1.1 问题 本案例需要创建一个TRTransportation类,类中有一个方法叫print的方法,该方法默认输出 “显示交通工具信息”,这个类作为父类,派生出三个子类TRTa ...
- 六、CCLayer
一个游戏中可以有很多个场景,每个场景里面又可能包含有多个图层,这里的图层一般就是CCLayer对象.CCLayer本身几乎没什么功能,对比CCNode,CCLayer可用于接收触摸和加速计输入.其实, ...
- JS操作DOM常用API总结
<JS高程>中的DOM部分写的有些繁琐,还没勇气整理,直到看到了这篇博文 Javascript操作DOM常用API总结,顿时有了一种居高临下,一览全局的感觉.不过有时间还是得自己把书里面的 ...
- 继承自CCObject的对象成员变量出错或者为空的问题
写了个类想让其作为某种数据集合,还可以自动销毁,所以就直接继承了最底层的CCObject,所以并不属于视图,也就不会被addChild到显示列表里,于是就造成了接下来遇到的一个情况:其所有的成员变量被 ...
- 2014年IT互联网行业薪酬待遇
以下均为应届毕业生的起薪待遇: 一.民企 1. 百度 13k*14.6,special 14~17k*14.6 开发类 13K*14.6 (2014) 测试类.前端类 12K*14.6 (2014) ...
- 快速对字符转义,避免跨站攻击XSS
XSS已经成为非常流行的网站攻击方式,为了安全起见,尽量避免用户的输入.可是有些情况下不仅不避免,反而要求鼓励输入,比如写博客.博客园开放性很高,可以运行手写的JS.之前比较著名的例子就是,凡是看到某 ...
- 装载:深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件
在求取有约束条件的优化问题时,拉格朗日乘子法(Lagrange Multiplier) 和KKT条件是非常重要的两个求取方法,对于等式约束的优化问题,可以应用拉格朗日乘子法去求取最优值:如果含有不等式 ...
- 110. Balanced Binary Tree
Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...
- Gulp 总结
Gulp介绍 Gulp是一个前端开发的自动化构建工具.前端开发往往需要把LESS/SCSS文件进行编译成CSS文件,javascript多文件合并成一个文件并压缩以及一些其他需要重复性操作的工作.而G ...