zoukankan      html  css  js  c++  java
  • ServletContextListener在Springboot中的使用

    ServletContextListener是servlet容器中的一个API接口, 它用来监听ServletContext的生命周期,也就是相当于用来监听Web应用的生命周期。今天我们就来说说如何在Springboot 1.5.2这个轻量型框架中如何使用它。 
    其实配置ServletContextListener与其它Filter, Listener, Servlet方法是一致的,具体可参考Springboot 1.5.2 官方文档 
    首先写一个类来实现ServletContextListener接口,并实现contextInitialized(), contextDestroyed()两个父类方法,并使用@WebListener注解, 具体代码如下:

    package org.liting;
    
    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;
    import javax.servlet.annotation.WebListener;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    @WebListener
    public class PmsServletContextListener implements ServletContextListener{
        private Logger logger =  LoggerFactory.getLogger(this.getClass());
    
        @Override
        public void contextDestroyed(ServletContextEvent arg0) {
            // TODO Auto-generated method stub
            logger.info("liting: contextDestroyed");
        }
    
        @Override
        public void contextInitialized(ServletContextEvent arg0) {
            // TODO Auto-generated method stub
            logger.info("liting: contextInitialized");
        }
    
    }

    其次在Springboot web 应用启动代码中添加@ServletComponentScan注解,使我们的Springboot应用在启动时能扫描到该Listener.

    运行项目,我们可以springboot的启动log看到如下log信息,即表明我们的ServletContextListener注册成功。

    2017-03-28 20:31:43.274  INFO 8808 --- [ost-startStop-1] org.liting.PmsServletContextListener     : liting: contextInitialized

    那么我们就可以利用ServletContextListener来监听我们的web应用及做一些对应的业务逻辑。

     
     
  • 相关阅读:
    bzoj4358: permu
    bzoj4636: 蒟蒻的数列
    bzoj4229: 选择
    bzoj4561: [JLoi2016]圆的异或并
    bzoj2618: [Cqoi2006]凸多边形
    bzoj1803: Spoj1487 Query on a tree III
    bzoj2467: [中山市选2010]生成树
    PostgreSQL服务器存储参数的内部查看方法和实际表述之间的关系
    PostgreSQL 系统表
    PostgreSQL环境中查看SQL执行计划示例
  • 原文地址:https://www.cnblogs.com/exmyth/p/7612064.html
Copyright © 2011-2022 走看看