`
zhou5262721
  • 浏览: 9250 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Java Listener 监听器作用

阅读更多

Java 中 Listener监听器作用

1.1    Listener对象分类
Servlet的Listener监听器包括三种类型:
1、ServletContextListener    监听ServletContext对象

Java代码
  1. public void contextInitialized(ServletContextEvent event);   
  2. public void contextDestoryed(ServletContextEvent event);  
public void contextInitialized(ServletContextEvent event);
public void contextDestoryed(ServletContextEvent event);


2、HttpSessionListener 监听Session对象

Java代码
  1. public void sessionCreated(HttpSessionEvent event);   
  2. public void sessionDestoryed(HttpSessionEvent event);  
public void sessionCreated(HttpSessionEvent event);
public void sessionDestoryed(HttpSessionEvent event);


1、    HttpRequestListener 监听Request对象

Java代码
  1. public void requestinitialized(ServletRequestEvent event);   
  2. public void requestDestoryed(ServletRequestEvent event);  
public void requestinitialized(ServletRequestEvent event);
public void requestDestoryed(ServletRequestEvent event);


Web.xml文件配置

Xml代码
  1. <listener>  
  2.     <listener-class>listener.MyListener</listener-class>  
  3. </listener>  
<listener>
        <listener-class>listener.MyListener</listener-class>
    </listener>


1.2    Listener按属性分类
按照监听事件类型划分分为如下类型:
1、    用于监听域对象自身的创建和销毁的事件监听器。
2、    用于监听域对象的属性的增加和删除的事件监听器。
3、    用于监听绑定到HttpSession域中的某个对象的状态的事件监听器。
1.2.1    监听对象的属性事件监听器接口

1、    attributeAdd当被监听域对象中增加属性时会调用该系列监听器

Java代码
  1. public void attributeAdded(ServletContextAttributeEvent event);   
  2. public void attributeAdded(HttpSessionBindingEvent event);   
  3. public void attributeAdded(ServletRequestAttributeEvent event);  
public void attributeAdded(ServletContextAttributeEvent event);
public void attributeAdded(HttpSessionBindingEvent event);
public void attributeAdded(ServletRequestAttributeEvent event);


2、    attributeRemoved当被监听域对象中删除属性时会调用该系列监听器

Java代码
  1. public void attributeRemoved(ServletContextAttributeEvent event);   
  2. public void attributeRemoved(HttpSessionBindingEvent event);   
  3. public void attributeRemoved(ServletRequestAttributeEvent event);  
public void attributeRemoved(ServletContextAttributeEvent event);
public void attributeRemoved(HttpSessionBindingEvent event);
public void attributeRemoved(ServletRequestAttributeEvent event);


3、    attributeReplaced当被监听域对象中属性变更时时会调用该系列监听器

Java代码
  1. public void attributeReplaced(ServletContextAttributeEvent event);   
  2. public void attributeReplaced(HttpSessionBindingEvent event);   
  3. public void attributeReplaced(ServletRequestAttributeEvent event);  
public void attributeReplaced(ServletContextAttributeEvent event);
public void attributeReplaced(HttpSessionBindingEvent event);
public void attributeReplaced(ServletRequestAttributeEvent event);



注:使用属性监听器需要继承如下接口,实现以上方法

Java代码
  1. ServletContextAttributeListener,   
  2.   
  3. HttpSessionAttributeListener,   
  4. ServletRequestAttributeListener  
ServletContextAttributeListener,

HttpSessionAttributeListener, 
ServletRequestAttributeListener


1.2.2    感知Session绑定的事件监听器
保存到Session域中的对象可以有多种状态:
1、    绑定到Session域中
2、    从Session域中解除绑定
3、    Session对象持久化到存储设备
4、    Session对象从一个存储设备中恢复
可以使用

Java代码
  1. HttpSessionBindingListener、HttpSessionActivationListener  
HttpSessionBindingListener、HttpSessionActivationListener

两个监听接口实现JavaBean对象的绑定,从而了解JavaBean对象在Session域的状态。

Java代码
  1. HttpSessionBindingListener   
  2. public void valueBound(HttpSessionBindingEvent event);   
  3. public void valueUnbound(HttpSessionBindingEvent event);   
  4. HttpSessionActivationListener   
  5. public void sessionWillPassivate(HttpSessionEvent event);  
HttpSessionBindingListener
public void valueBound(HttpSessionBindingEvent event);
public void valueUnbound(HttpSessionBindingEvent event);
HttpSessionActivationListener
public void sessionWillPassivate(HttpSessionEvent event);


注:当Session对象持久化到文件系统时,激活上面方法。

Java代码
  1. public void sessionDidActivate(HttpSessionEvent event);  
public void sessionDidActivate(HttpSessionEvent event);


注:当Session对象从文件系统恢复时,激活上面方法。

 

分享到:
评论

相关推荐

    JAVALISTENER监听器教程及实例借鉴.pdf

    JAVALISTENER监听器教程及实例借鉴.pdf

    java监听器的实现和原理详解

    Java监听器的实现和原理详解 Java监听器是一种非常重要的设计模式,在Java中广泛应用于事件驱动编程。监听器模式的主要思想是将事件源和事件处理器分离,使得事件源可以独立于事件处理器,提高了系统的灵活性和可...

    java_listener监听器教程及实例.pdf

    java_listener监听器教程及实例.pdf

    JavaWeb开发技术-Listener监听器.pptx

    JavaWeb开发技术中的Listener监听器是Java企业级应用开发中的重要组成部分,主要用于监听应用程序中发生的特定事件,并在事件发生时执行相应的处理逻辑。监听器在JavaWeb开发中扮演着关键角色,它们允许开发者对Web...

    listener监听器demo

    标题"listener监听器demo"和描述"listener监听器小例子"暗示我们将探讨的是一个关于`Listener`的示例代码。 首先,让我们从Java GUI编程的角度来看`Listener`。在Swing或AWT中,我们经常使用各种类型的`Listener`,...

    JAVA Servlet监听器listener学习资料

    Java Servlet监听器(Listener)是Java Web开发中的一个重要组件,它们允许开发者在特定事件发生时执行自定义逻辑,而无需直接修改原有的业务代码。监听器是Servlet规范的一部分,通过实现特定的接口,开发者可以...

    java一个监听器的例子

    在Java编程中,监听器(Listener)是一种关键的机制,它允许程序对特定事件进行响应。这个例子将探讨如何在Java中使用监听器,特别是事件监听器,它们是Java Swing和Java AWT库中用于图形用户界面(GUI)交互的核心...

    STRUTS:listener监听器

    ### STRUTS:Listener监听器详解 #### 一、引言 在Java Web开发中,监听器(Listener)是十分重要的组成部分,它们主要用于监听特定事件的发生,并执行相应的处理逻辑。Struts框架作为早期流行的MVC架构之一,充分...

    Java Web监听器Listener接口原理及用法实例

    Java Web监听器Listener接口原理及用法实例 Java Web监听器Listener接口是一种特殊的Java接口,用于监听和响应Web应用程序中的事件。该接口定义在javax.servlet包中,提供了一种机制,使开发者能够监听和响应Web...

    Java的监听器种类

    ### Java的监听器种类 Java中的监听器是一种特殊类型的对象,它们主要负责监听特定的事件并在这些事件发生时执行相应的动作。监听器广泛应用于多种场景,尤其是在Servlet容器中,监听器能够帮助开发者更加灵活地...

    JAVA SESSION监听器

    Java Session监听器是Java Servlet规范中提供的一种机制,用于对HttpSession对象的生命周期事件进行监听和处理。在Web应用程序中,Session是用来跟踪用户状态的重要工具,特别是在无状态的HTTP协议上。当用户登录后...

    java监听器练习

    3. **事件监听器(Event Listener)**:处理事件的类或接口,实现相应的事件处理方法。 4. **事件处理器(Event Handler)**:实际执行的操作逻辑,通常是在监听器接口的方法中实现。 #### 三、本例中的Java监听器实践 ...

    基于Java的MQListener消息监听器管理平台.zip

    基于Java的MQListener消息监听器管理平台 项目简介 MQListener是一个用于解决消息消费过程中常见问题的解决方案。它支持RabbitMQ消息队列,提供了消息消费者的统一配置与管理功能,包括服务列表、listener列表、...

    Comet4Listener监听器

    java消息推送技术中的监听器类,用于创建和监听通道数据

    java监听器

    在Java编程中,监听器(Listener)是一种关键的机制,它允许程序对特定事件的发生做出反应。Java提供了丰富的API来支持事件驱动编程,这在GUI(图形用户界面)开发、网络通信、数据变更跟踪等多个场景中都有广泛的...

    java jsp listener小用法

    在JSP中,监听器(Listener)是Servlet API的一部分,属于事件驱动模型,可以监听特定的事件并进行响应。本篇文章将深入探讨如何使用Java JSP的监听器来实现用户登录次数的记录。 一、理解监听器(Listener) 在...

    Java监听器添加 四种监听器 内部 外部 内部匿名 自身

    在Java中,监听器(Listener)是事件处理机制的重要组成部分,它主要用于响应用户或其他组件产生的事件。根据实现方式的不同,可以将监听器分为几种类型:内部类监听器、外部类监听器、内部匿名类监听器以及自身监听...

    JavaWebServlet+JSP+EL表达式+JSTL标签库+Filter过滤器+Listener监听器

    JavaWeb技术是构建基于Java平台的Web应用程序的重要框架,它包括了Servlet、JSP、EL表达式、JSTL标签库、Filter过滤器以及Listener监听器等多个关键组件。这些组件协同工作,使得开发者能够创建动态、交互式的Web...

    Java中的Listener监听器

     · Listener的定义与作用  · Listener的分类与使用  ServletContext监听  Session监听  Request监听  · Listener的应用实例  利用HttpSessionListener统计多在线用户人数  Spring使用...

Global site tag (gtag.js) - Google Analytics