• JavaWeb三大组件之Listener


    1、Listener概述

    Listener 表示监听器,是 JavaWeb 三大组件(Servlet、Filter、Listener)之一

    监视器可以监听就是在 application、session、request三个对象创建、销毁或者往其中添加修改删除属性时自动执行代码的功能组件。

    request 和 session 我们学习过。而 applicationServletContext 类型的对象。

    ServletContext 代表整个web应用,在服务器启动的时候,tomcat会自动创建该对象。在服务器关闭时会自动销毁该对象。

    2、分类

    JavaWeb提供了8个监听器:

    监听器分类监听器名称作用
    ServletContext监听ServletContextListener用于对ServletContext对象进行监听(创建、销毁)
    ServletContextAttributeListener对ServletContext对象中属性的监听(增删改属性)
    Session监听HttpSessionListener对session对象的整体状态的监听(创建、销毁)
    HttpSessionAttributeListener对Session对象中的属性监听(增删改属性)
    HttpSessionBindingListener监听对象于Session的绑定和解除
    HttpSessionActivationListener对Session数据的钝化和活化的监听
    Request监听ServletRequestListener对Request对象进行监听(创建、销毁)
    SerlvetRequestAttributeListener对Request对象中属性的监听(增删改属性)

    这里面只有 ServletContextListener 这个监听器后期我们会接触到,ServletContextListener 是用来监听 ServletContext 对象的创建和销毁。

    ServletContextListener 接口中有以下两个方法

        void contextInitialized(ServletContextEvent sce)ServletContext 对象被创建了会自动执行的方法

        void contextDestroyed(ServletContextEvent sce)ServletContext 对象被销毁时会自动执行的方法

    3、代码演示

    我们演示一下ServletContextListener 监听器

            定义一个类,实现ServletContextListener 接口

            重写接口所有的抽象方法

            使用@WebListener进行配置

    代码如下:

    1. @WebListener
    2. public class ContextLoaderListener implements ServletContextListener {
    3. @Override
    4. public void contextInitialized(ServletContextEvent sce) {
    5. //加载资源
    6. System.out.println("ContextLoaderListener...");
    7. }
    8. @Override
    9. public void contextDestroyed(ServletContextEvent sce) {
    10. //释放资源
    11. }
    12. }

      启动服务器,就可以在启动的日志信息中看到contextInitialized() 方法输出的内容,同时也说明了 ServletContext 对象在服务器启动的时候被创建了。

  • 相关阅读:
    不使用AMap.DistrictSearch,通过poi数据绘制省市县区块
    30个Python操作小技巧
    数据集格式相互转换——CoCo、VOC、YOLO、TT100K
    nacos配置中心源码分析
    fcpx插件:82种复古电影胶卷框架和效果mFilm Matte
    东南电子开启申购:客户集中度较高,预计上市时市值约18亿元
    【沐风老师】3DMAX一键云生成器插件使用教程
    1512_人月神话阅读笔记_没有银弹下篇
    广度优先遍历解决迷宫问题
    201709-3 CCF jason查询 (满分题解)
  • 原文地址:https://blog.csdn.net/weixin_56058578/article/details/128112972