ContextLoaderListener
2018-12-11 本文已影响0人
赫灵
1、使用方式:
web.xml中配置:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
2、看一下此类的继承关系:
public class ContextLoaderListener extends ContextLoader implements ServletContextListener
3、执行时机:
因为其实现了ServletContextListener接口,所以当servlet容器启动的时候,会调用contextInitialized方法来执行相应的操作,所以servlet加载spring的入口也就在这个地方,看一下源代码:
@Override
public void contextInitialized(ServletContextEvent event) {
initWebApplicationContext(event.getServletContext());
}
从这个地方可以看出来,其实ContextLoaderListener 并没有什么特别的地方,主要的逻辑都在ContextLoader 里面,所以如果我们想自己写一个自己的ContextLoaderListener也是可以的,继承ContextLoader并实现ServletContextListener,然后加载自己想要的东西