监听器:
正对WEB环境的监听
主要有三类:
1.ServletContext:对servlet上下文(application对象)进行监听
2.Session:对session监听
3.Request:对request的监听
主要是:ServeltContext.Session的监听
在WEB端实现监听实质:
实现一系列的监听接口(实现相应的接口,覆写各接口中相应的方法,在相应的事件触发的时候会执行自己的监听器中的覆写的方法,在各个方法中完成自己想要的操作,从而实现了监听)
监听--就是在进行某种各个范围(application,session,request)中有相关值的设置、修改、替换的时候,这些操作都会触发事件,而java中事件的代理机制,事件处理是利用listener机制,所以为了在事件触发的时候能够使自己能够采取相应的措施,就需要---->继承这样的listener,在listener中覆写相应的方法,覆写相应的事件处理方法,在对应的方法中处理对应的事件,也就是进行了监听
对ServletContext的监听
ServletContext---javax.servlet.ServletContext
1.ServletContextListener---对整个Servlet上下文进行监听(启动、销毁)
public void contextInitialized(ServletConfigEvent sce)---上下文初始化
public void contextDestroyed(ServletConfigEvent sce)--上下文的销毁
ServletConfigEvent
public ServletContext getServletContext()--就是取得application对象
2.ServletContextAttributeListener---对Servlet上下文的属性的监听
public void attributeAdded(ServletContextAttributeEvent scab):增加属性
public void attributeRemoved(ServletContextAttributeEvent scab) :移除属性
public void attributeReplaced(ServletContextAttributeEvent scab) :替换属性(第二次设置统一属性的值)
ServletContextAttributeEvent
public java.lang.String getName()---得到属性的名称
public java.lang.Object getValue()--得到属性的值
与setAttribute(String name,Object value)是对应的
web.xml中的配置 ---跟过滤器一样是组件式的工作方式
<listener>
<listener-class>****</listener-class>
</listener>
上下文监听(ServletContext监听)主要是针对容器的初始化、容器销毁、属性操作
session监听是对session的创建、销毁和属性操作
session是HTTP写一下的类容,所以是javax.servlet.http包中
javax.servlet.http Interface HttpSessionListener
public void sessionCreated(HttpSessionEvent se)---session创建
public void sessionDestroyed(HttpSessionEvent se)---session销毁
HttpSessionEvent
public HttpSessionEvent(HttpSession source)--取得当前的session
javax.servlet.http Interface HttpSessionAttributeListener
--public void attributeAdded(HttpSessionBindingEvent se)
--public void attributeRemoved(HttpSessionBindingEvent se)
--public void attributeReplaced(HttpSessionBindingEvent se)
javax.servlet.http Class HttpSessionBindingEvent
--public HttpSession getSession()
--public java.lang.String getName()
--public java.lang.Object getValue()
页面中:session.setAttribute()触发了两个事件----session创建和属性增加
session销毁有两种方式:
1.session超时(web.xml)
·<session-config>
<time-out>时间</time-out> #单位为分钟,在达到这个时间之后session失效,并触发sessionDestroyed事件
</session-config>
2.手动使session失效
invalidate()---session.invalidate()手动调用invalidate方法使session失效
二者都会使session失效,并触发sessionDestroyed事件----这就是我们使用的“注销”
监听器的使用案例:
统计当前在线人员
分享到:
相关推荐
本案例将探讨如何利用JavaWeb监听器实现页面静态化,以提高网站性能和用户体验。页面静态化是将动态生成的网页转化为HTML静态文件,使得用户在访问时无需经过服务器端复杂的处理过程,直接从硬盘或缓存中读取内容,...
javaweb 监听器(Listener)和过滤器(Filter)
在Java Web开发中,监听器(Listener)是一种用于监控Web应用中各种事件的组件,包括诸如对象创建、销毁,会话开始、结束等。本文将详细介绍如何使用监听器来统计在线用户人数,包括实现的基本思路、具体代码实现...
【JavaWeb监听器(Listener)详解】 在JavaWeb开发中,监听器(Listener)是一种重要的组件,主要用于监听和响应Web应用程序中的特定事件。通过监听器,开发者可以实现在特定事件触发时执行相应的处理逻辑,例如用户...
在IT行业中,监听器(Listener)和过滤器(Filter)是两种非常重要的组件,它们在Web应用程序中扮演着不可或缺的角色。本文将详细讲解如何利用监听器进行访问计数以及通过过滤器来过滤非法字符,以确保系统的安全性...
### JavaWeb中的监听器与过滤器 #### 一、监听器(Listener) 监听器是Java Web应用程序中的一个重要组件,主要用于监听容器中特定事件的发生,并作出相应的反应。在Java Web开发中,监听器主要用来监控应用中某些...
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
教程名称: 【动力节点】Javaweb开发视频教程之监听器 动力节点推出的Java视频教程包含两大部分内容:第一部分为监听器相关设计模式的详解。其中包括观察者设计模式、监听器设计模式。第二部分为监听器用法。详细...
【JavaWeb 高级:过滤器与监听器详解】 在JavaWeb开发中,过滤器(Filter)和监听器(Listener)是两种非常重要的组件,它们能够帮助我们实现更精细的控制和管理应用程序的行为。本篇将详细介绍过滤器的原理、使用...
JavaWeb开发技术中的Listener监听器是Java企业级应用开发中的重要组成部分,主要用于监听应用程序中发生的特定事件,并在事件发生时执行相应的处理逻辑。监听器在JavaWeb开发中扮演着关键角色,它们允许开发者对Web...
【Java Web 监听器统计在线用户及人数详解】 在Java Web开发中,实时统计在线用户数量是一项重要的功能,这通常涉及到对用户会话(Session)的管理。本篇文章将详细解析如何使用Java Web监听器来实现这一目标。 ...
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
13. **Web.xml配置**:这是JavaWeb应用的部署描述符,用于配置Servlet、过滤器、监听器等组件。 以上就是JavaWeb开发的一些核心知识点。这个压缩包中的"JavaWeb"目录可能包含了项目的源代码、配置文件、资源文件等...
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
8. **过滤器和监听器**:过滤器(Filter)用于拦截和处理请求,监听器(Listener)用于监听特定事件。源代码可能包含过滤器和监听器的实现,如字符编码过滤器、登录验证过滤器和会话监听器。 9. **部署描述符**:`...
2. **web.xml**:这是Web应用程序的部署描述符,定义了Servlet的映射、过滤器、监听器等配置信息。它是理解整个项目运行流程的关键。 3. **Servlet**:用于接收和处理HTTP请求,实现业务逻辑。在Servlet中,`doGet`...
- **核心技术**:详细讲解Servlet、JSP、过滤器、监听器等JavaWeb核心技术。 - **项目实战**:通过具体的项目案例,帮助学员将理论知识运用到实际开发中去。 - **最佳实践**:分享一些常见的编程技巧和最佳实践,...
6. **过滤器与监听器**:Filter和Listener是JavaWeb的重要组件。过滤器可以拦截请求和响应,进行预处理或后处理,如字符编码转换。监听器监听特定的事件,如session的创建、销毁,实现特定功能。 7. **Apache ...
6. **过滤器(Filter)与监听器(Listener)**:这两者是JavaWeb中的重要组件,过滤器可以拦截请求和响应,实现预处理和后处理功能,如字符编码转换;监听器则可以监听特定事件,如session的创建和销毁。 7. **Web...