理解web.xml文件

项目加载web.xml文件的过程:

1. 先读取<context-param></context-param>和<listener></listener>;

    <context-param>翻译成中文是“上下文参数”,从字面意思就能明白作用:上下文通用参数的初始化;

    <listener>它能监听到服务器的启动和停止,在启动和停止时触发里面的方法做相应必要的常规操作;

2. 创建一个ServletContext,被整个项目共享;

3. ServletContext根据<context-param>进行赋值;

4. ServletContext根据<listener>进行启动的必要化工作;

    比如:<context-param>中设置数据库的连接方式(驱动、url、user、password),在<listener>中初始化数据库的连接销毁资源释放等;

5. ServletContext根据<filter></filter>实例化过滤器;

6. ServletContext根据<servlet></servlet>进行servlet的初始化;

    <servlet>里配置的类不管有多新技术,都必须得实现最老牌的HttpServlet;

    它的主要作用是对请求url进行分析分配,例如:http请求的url=http://localhost:9001/program/XXX/XXX? aa=xx & bb=xx;   

     /XXX/XXX匹配上servletA的<url-pattern>,就交由servlet处理,匹配上servletB的<url-pattern>就交由servletB处理;

     aa=xx & bb=xx 参数的处理,则是交由对应上的servlet里的拦截器interceptor来处理;

    -------------------------------------------------------------------------------------------------------------------------------------

    注意:<servlet>只要有一个servlet匹配上,就不继续进行下一个servlet的匹配,而<filter>是顺序匹配,不管有没有匹配上,反正你得依照顺序把<filter>都过一遍;

 

 

 

整的来说,web.xml的加载顺序:

<context-param> ----><listener>----> <filter> ----> <servlet>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值