web.xml 中的listener、 filter、servlet 加载顺序

4 篇文章 0 订阅
2 篇文章 0 订阅

web.xml 中的listener、 filter、servlet 加载顺序

1. 在 web.xml 文件中不同类型的加载跟定义的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是: listener -> filter -> servlet;
测试方法:分别自定义一个listener,filter和servlet。在init()方法里面打印日志信息,启动服务器后看日志信息顺序即可。
2.同类型配置默认根据定义先后进行加载,如web.xml定义多个filter(先后定义filter1,filter2,filter3):则按filter1->filter2->filter3顺序加载;
测试方法:定义相同类型的filter,在init()方法日志,看日志先后顺序即可。
3.定义多个servlet时,可通过配置<load-on-startup>x</load-on-startup>定义配置优先级。配置如下:
<servlet>
<servlet-name>my_servlet</servlet-name>
<servlet-class>com.mycompany.ServletClass1</servlet-class>
< init-param> <!--定义servlet的初始化参数, 可以有多个init-param参数-->
< param-name>iParam< /param-name>
< param-value>2< /param-value>
< /init-param>
< load-on-startup>2< /load-on-startup> <!--定义servlet的加载顺序-->
</servlet>
 
<servlet-mapping>
<servlet-name>my_servlet</servlet-name>
<url-pattern>*.hello</url-pattern>
</servlet-mapping>

4.配置了 context-param参数时,加载顺序为context-param ->listener -> filter -> servlet
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值