论坛首页 Java企业应用论坛

filter/listener/servlet启动顺序

浏览 5750 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2014-03-31  

1.启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param> 

2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文. 

3.容器将<context-param></context-param>转化为键值对,并交给ServletContext. 

4.容器创建<listener></listener>中的类实例,即创建监听(通过contextInitialized(ServletContextEvent args)这个方法). listener的类实例需要实现 javax.servlet.ServletContextListener接口。

5.容器初始化<filter></filter>。filter的类实例需要实现 javax.servlet.Filter接口

6.容器加载<load-on-startup>的<serlvet/>。 servlet实现javax.servlet.Servlet接口

7.容器销毁时,按照servlet-->filter-->listener的顺序销毁servlet、filter和listener

 

论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics