• 【Spring boot 集成 Fliter 和 Linstener】


    Spring boot 集成 Fliter Linstener
    上一章已经对定义 Servlet 的方法进行了说明,过滤器(Filter)和监听器(Listener)的注册方法和 Servlet 一
    样,不清楚的可以查看下上一篇文章(20):
    本文将直接使用@WebFilter 和@WebListener 的方式,完成一个
    Filter 和一个 Listener;使用注解
    @ServletComponentScan// 这个就是扫᧿相应的 Servlet ;
    开发 Filter【:添加 @ServletComponentScan 注解之后,使用注解开发的 Filter 和 Linstener 将会被自动注册】
    具体实现代码:
    com.hpit.sb.filter.MyFilter
    import java.io.IOException;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.annotation.WebFilter;
    import org.apache.log4j.Logger;
    //使用注解定义一个过滤器
    @WebFilter (urlPatterns = "/*" , filterName = "myFilter" )
    public class MyFilter implements Filter {
    private Logger logger = Logger. getLogger (getClass());
    @Override
    public void destroy() {
    logger .info( "destroy()" );
    }
    @Override
    public void doFilter(ServletRequest request , ServletResponse response , FilterChain chain )
    throws IOException, ServletException {
    logger .info( "doFilter()" );
    logger .info( "before filter" );
    chain .doFilter( request , response );
    logger .info( "after filter" );
    }
    @Override
    public void init(FilterConfig config ) throws ServletException {
    logger .info( "init()" );
    }
    }
    开发 Linstener
    具体实现代码:
    com.hpit.sb.listener. Mylistener
    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;
    import javax.servlet.annotation.WebListener;
    import org.apache.log4j.Logger;
    /**
    * TODO 使用注解开发一个监听器
    *
    *
    */
    @WebListener
    public class Mylistener implements ServletContextListener {
    private Logger logger = Logger. getLogger (getClass());
    @Override
    public void contextDestroyed(ServletContextEvent contextEvent ) {
    logger .info( "contextDestroyed" );
    }
    @Override
    public void contextInitialized(ServletContextEvent contextEvent ) {
    logger .info( "contextInitialized" );
    }
    }
    启动日志,并请求一个有效连接:

     

  • 相关阅读:
    leetcode&lintcode分类刷题:图论(一、连通域/岛屿问题)
    最佳实践:DevOps在嵌入式软件开发领域的实践探索丨IDCF
    科研Tetrazine-PEG-valine 四嗪-聚乙二醇-缬氨酸、色氨酸、鸟氨酸、精氨酸
    Pandas数据分析17——pandas数据清洗(缺失值、重复值处理)
    学习总结:jQuery插件——Validation Plugin
    宝塔node建立软连接,解决command not found问题
    《TCP/IP网络编程》阅读笔记--getsockopt和setsockopt的使用
    聚类算法模型评价指标
    SSTI模板注入
    资产设备管理系统
  • 原文地址:https://blog.csdn.net/m0_72254454/article/details/127769419