web.xmlの三つのワイルドカードとマッチングルール

2037 ワード

一、url-patternの三種の書き方
1、正確にマッチングする。「/」で始まり、servlet名を付けます。   /ad ;
2、パスマッチング。「/」で始まり、ワイルドカード「*」を付けます。   /*  ;
3、拡張子がマッチします。ワイルドカード「*」の先頭に拡張子を付けます。 :  *.action ;
 
二、servlet適合規則
1、正確にマッチングしてから、パスをマッチングする たとえば:
servlet-mapping1:<url-pattern>/adurl-pattern>
servlet-mapping2:<url-pattern>/*url-pattern>
一つの要求があるときhttp://localhost:8080/ad来た時、servlet-mappingn 1がマッチングしました。もうservlet-mappingg 2でマッチしません。
 
2、パスがマッチングする時、一番長いパスでマッチングしてから、一番短いパスでマッチングする。
servlet-mapping1:<url-pattern>/ad/uplaod.jspurl-pattern>
servlet-mapping2:<url-pattern>/ad/*url-pattern>
一つの要求があるときhttp://localhost:8080/ad/upload.jsp来た時、servlet-mappingn 1がマッチングしました。もうservlet-mappingg 2でマッチしません。
 
3、拡張子のマッチングは、正確なマッチングとマッチングに単独のクラスです。 struts 2の拡張子はactionですので、http://localhost:8080/ad.actionservlet-mapping:*.actionによってマッチングされます。 以上はservletが見つからないので、デフォルトのservletで/に構成されています。
転載先:https://www.cnblogs.com/cc-freiheit/p/7467062.html