zoukankan      html  css  js  c++  java
  • Servlet3.0之四:@WebListener监听器注解

    Servlet3.0作为J2EE 6规范一部分,并随J2EE6一起发布,@WebListener是该注解用于将类声明为监听器,是Servlet3.0的新特性,不需要在web.xml进行配置,简化了配置。

    一、Listener介绍

    在servlet3.0以后,我们可以不用再web.xml里面配置listener,只需要加上@WebListener注解就可以实现。

    二、@WebListener用法

    该注解用于将类声明为监听器,被 @WebListener 标注的类必须实现以下至少一个接口:

    • ServletContextListener
    • ServletContextAttributeListener
    • ServletRequestListener
    • ServletRequestAttributeListener
    • HttpSessionListener
    • HttpSessionAttributeListener

    下面是@WebListener的属性列表。

    Name

    Type

    Required

    Description

    value

    String

    Optional

    Description of the listener.

    示例:

    package com.dxz.demo.listener;
    
    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;
    import javax.servlet.annotation.WebListener;
    
    @WebListener
    public class ContextListener implements ServletContextListener {
    
        @Override
        public void contextInitialized(ServletContextEvent event) {
            System.out.println("application started");
        }
    
        @Override
        public void contextDestroyed(ServletContextEvent event) {
            System.out.println("application stopped");
        }
    }
    
    package com.dxz.demo.listener;
    
    import javax.servlet.annotation.WebListener;
    import javax.servlet.http.HttpSessionAttributeListener;
    import javax.servlet.http.HttpSessionBindingEvent;
    import javax.servlet.http.HttpSessionEvent;
    import javax.servlet.http.HttpSessionListener;
    
    @WebListener("Session listener for the application")//description of the listener
    public class MySessionListener implements HttpSessionListener, HttpSessionAttributeListener {
    
        @Override
        public void attributeAdded(HttpSessionBindingEvent event) {
    
        }
    
        @Override
        public void attributeRemoved(HttpSessionBindingEvent event) {
    
        }
    
        @Override
        public void attributeReplaced(HttpSessionBindingEvent event) {
    
        }
    
        @Override
        public void sessionCreated(HttpSessionEvent event) {
    
        }
    
        @Override
        public void sessionDestroyed(HttpSessionEvent event) {
    
        }
    
    }

    结果:

    注意:

    1、Listener类使用@WebListener注解;

    2、Spring boot的启动类需要增加@ServletComponentScan用于扫描加载Listener类;

  • 相关阅读:
    并行fp-growth图解(mahout)
    Sqoop的安装与使用
    深入理解Hadoop集群和网络
    datanode与namenode的通信原理
    Hadoop添加节点datanode(生产环境)
    Hadoop中HDFS工作原理
    实现hadoop中的机架感知
    hadoop集群监控工具Apache Ambari安装配置教程
    sdn测量综述
    SDN测量论文粗读(三)9.24
  • 原文地址:https://www.cnblogs.com/duanxz/p/2917297.html
Copyright © 2011-2022 走看看