JavaWeb——Listener

本文详细介绍了JavaWeb中的Listener组件,包括ServletContextListener、HttpSessionListener、ServletRequestListener等,以及它们各自监听的事件类型和方法实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaWeb——Listener

简介

作为JavaWeb三大组件(Servlet,Filter,Listener)之一的监听器Listener,主要用于监听ServletContext,Session,Request等对象的创建,销毁以及属性的修改。

分类

监听器类别监听器类型监听事件类型
ServletContextServletContextListenerServletContext创建和销毁事件
ServletContextAttributeListenerServletContext中属性的添加、删除和修改事件
SessionHttpSessionListenerHttpSession创建和销毁事件
HttpSessionAttributeListenerHttpSession中属性的添加、删除和修改事件
HttpSessionBindingListener实现了HttpSessionBindingListener接口的对象在HttpSession中被绑定或解绑的事件
HttpSessionActivationListener实现了HttpSessionActivationListener接口的对象在HttpSession中被活化(反序列化)或钝化(序列化)的事件
RequestServletRequestListenerServletRequest创建和销毁事件
ServletRequestAttributeListenerServletRequest中属性的添加、删除和修改事件

在使用时只需实现相应的Listener接口并重写其中的方法即可。

ServletContextListener

public interface ServletContextListener extends EventListener {
    default void contextInitialized(ServletContextEvent sce) {
    } // 监听ServletContext初始化

    default void contextDestroyed(ServletContextEvent sce) {
    }// 监听ServletContext销毁
}

ServletContextAttributeListener

public interface ServletContextAttributeListener extends EventListener {
    default void attributeAdded(ServletContextAttributeEvent scae) {
    }//监听ServletContext属性添加

    default void attributeRemoved(ServletContextAttributeEvent scae) {
    }//监听ServletContext属性移除

    default void attributeReplaced(ServletContextAttributeEvent scae) {
    }//监听ServletContext属性修改
}

HttpSessionListener

public interface HttpSessionListener extends EventListener {
    default void sessionCreated(HttpSessionEvent se) {
    }//监听HttpSession创建

    default void sessionDestroyed(HttpSessionEvent se) {
    }//监听HttpSession销毁
}

HttpSessionAttributeListener

public interface HttpSessionAttributeListener extends EventListener {
    default void attributeAdded(HttpSessionBindingEvent se) {
    }//监听HttpSession属性添加

    default void attributeRemoved(HttpSessionBindingEvent se) {
    }//监听HttpSession属性移除

    default void attributeReplaced(HttpSessionBindingEvent se) {
    }//监听HttpSession属性修改
}

HttpSessionBindingListener

public interface HttpSessionBindingListener extends EventListener {
    default void valueBound(HttpSessionBindingEvent event) {
    }//监听HttpSession绑定

    default void valueUnbound(HttpSessionBindingEvent event) {
    }//监听HttpSession解绑
}

HttpSessionActivationListener

public interface HttpSessionActivationListener extends EventListener {
    default void sessionWillPassivate(HttpSessionEvent se) {
    }//监听序列化

    default void sessionDidActivate(HttpSessionEvent se) {
    }//监听反序列化
}

ServletRequestListener

public interface ServletRequestListener extends EventListener {
    default void requestDestroyed(ServletRequestEvent sre) {
    }//监听ServletRequest销毁

    default void requestInitialized(ServletRequestEvent sre) {
    }//监听ServletRequest初始化
}

ServletRequestAttributeListener

public interface ServletRequestAttributeListener extends EventListener {
    default void attributeAdded(ServletRequestAttributeEvent srae) {
    }//监听ServletRequest属性添加

    default void attributeRemoved(ServletRequestAttributeEvent srae) {
    }//监听ServletRequest属性移除

    default void attributeReplaced(ServletRequestAttributeEvent srae) {
    }//监听ServletRequest属性修改
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值