servlet对应的url-pattern 精确>/*>*.do>/

今天看springmvc源码,对url-pattern,有点不太理解,找了几篇源码的博客看,挺不错,自己将其简化,在此记录.

规则1:精确匹配,例如add.do,add.html等

规则2:前缀匹配,例如/*,/test/*

规则3:扩展名匹配,*.do,*.html

规则4:使用资源文件来处理servlet,使用contextVersion的welcomeResources属性,这个属性是个字符串数组

规则7:使用默认的servlet,也就是 /

可以看到:精确>/*>*.do>/这个匹配顺序.

  • “/*”属于路径匹配,并且可以匹配所有request,由于路径匹配的优先级仅次于精确匹配,所以“/*”会覆盖所有的扩展名匹配,很多404错误均由此引起,所以这是一种特别恶劣的匹配模式,一般只用于filter的url-pattern
  • “/”是servlet中特殊的匹配模式,该模式有且仅有一个实例,优先级最低,不会覆盖其他任何url-pattern,只是会替换servlet容器的内建default servlet ,该模式同样会匹配所有request。
所以这两个还是区别很大的.
借鉴:
https://www.cnblogs.com/canger/p/6084846.html

这是源码的博客,大家可以去看下.

http://www.cnblogs.com/fangjian0423/p/servletContainer-tomcat-urlPattern.html#springmvc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值