servlet--监听器
来源:互联网 发布:java if else语句 编辑:程序博客网 时间:2024/06/16 12:19
什么是监听器?
所谓监听器就是指对整个web环境的监听,主要监听三个对象的活动:
1.ServletContext: 对Servlet上下文对象监听
2.Session : 对Session对象监听
3.Request :对Request对象监听
对对象监听就是实现一系列的监听接口
对对象的监听
对ServletContext对象的监听
ServletContextListener:对整个Servlet上下文监听(启动、销毁)要在其监听处理程序中实现下面方法
public void contextInitalized(ServletContextEvent sce):上下文对象的初始化
public void contextDestroyed(ServletContextEvent sce):上下文对象的销毁
里面的参数是ServletContextEvent事件是在servlet对象创建时自动激活的事件
ServletContextAttributeListener:对Servlet上下文属性的监听
public void attributeAdded(ServletContextAttributeEvent scab):属性增加(setAttribute)
public void attributeRemoved(ServletContextAttributeEvent scab):属性删除(removeAttribute)
public void attributeReplaced (ServletContextAttributeEvent scab):属性替换(第二次设置同一属性) 里面的参数:ServletContextAttributeEvent事件:能取得属性的名称和内容
对Session对象的监听
HttpSessionListener:对session对象整体状况监听
public void sessionCreated(HttpSessionEvent se):
session创建
public void sessionDestroyed(HttpSessionEvent se)
session销毁
HttpSessionEvent事件:getSession();
HttpSessionAttributeListener:对session的属性监听
public void attributeAdded(HttpSessionBindingEvent se): 属性增加
public void attributeRemove(HttpSessionBindingEvent se): 属性删除
public void attributeReplaced(HttpSessionBindingEvent se): 属性替换
HttpSessionBindingEvent事件:getName(); getValue() ; getSession();
简单的监听器实现
监听request,session,ServletContext对象的创建和销毁
public class OnlineListenner implements ServletContextListener,HttpSessionListener,ServletRequestListener{ int count=0; @Override public void requestDestroyed(ServletRequestEvent arg0) { System.out.println("请求对象销毁............."); } @Override public void requestInitialized(ServletRequestEvent arg0) { System.out.println("请求对象创建............."); } @Override public void sessionCreated(HttpSessionEvent arg0) { System.out.println("session对象创建............."); count++; System.out.println("当前在线人数"+count); } @Override public void sessionDestroyed(HttpSessionEvent arg0) { System.out.println("session对象销毁............."); count--; System.out.println("当前在线人数:"+count); } @Override public void contextDestroyed(ServletContextEvent arg0) { System.out.println("ServletContext对象销毁............."); } @Override public void contextInitialized(ServletContextEvent arg0) { System.out.println("ServletContext对象创建............."); }}
web.xml
<!-- 配置监听器 --> <listener> <listener-class>com.kaner.servlet.OnlineListenner</listener-class> </listener>
- Servlet监听器
- servlet监听器
- Servlet监听器
- Servlet监听器
- servlet 监听器
- servlet监听器
- Servlet监听器
- servlet监听器
- Servlet监听器
- Servlet监听器
- Servlet监听器
- Servlet监听器
- Servlet监听器
- Servlet监听器
- servlet监听器
- servlet监听器
- servlet监听器
- servlet监听器
- linux后台运行相关命令
- Springboot 中同时使用mybatis注解和springbean-xml配置方式
- bzoj2705: [SDOI2012]Longge的问题(数论)
- WebShell概述
- python2安装MySQLdb
- servlet--监听器
- 命令行参数
- 存储在变量 sys.argv 中
- Linux设备驱动之中断---基本代码框架
- 万树IT:如何提升Android水平
- 关于如何在程序中使用命令行参数
- 判断单链表是否递增
- HDU 2602 Bone Collector(01背包问题)
- BPNN