web.xml中配置的标签,对应容器的组件。
1、listener
Listener就是监听器,本质是方法回调
在JavaWeb的Listener也是这么个原理,但是它监听的内容不同,它可以监听Application、Session、Request对象,当这些对象发生变化就会调用对应的监听方法。
2、filter
filter与servlet在很多的方面极其相似,但是也有不同,同时他们在web.xml中的配置文件也是差不多的、 但是servlet主要负责处理请求,而filter主要负责拦截请求,和放行。
如果有多个过滤器都匹配该请求,顺序决定于web.xml filter-mapping的顺序,在前面的先执行,后面的后执行。
3、servlet
Servlet是用来处理客户端请求的动态资源
在web.xml中的配置方式:
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.briup.estore.web.servlet.LoginServlet</servlet-class> </servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
---------------------------------------------分割线--------------------------------------------------------
加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:真正的加载顺序为:context-param -> listener -> filter -> servlet
同个类型之间的实际程序调用的时候的顺序是根据对应的 mapping 的顺序进行调用的。