/*可以攔截所有url,包括帶字尾的,這個他們沒講錯。
但是他們說/的url-pattern不能匹配帶字尾的url,比如.html,.jsp等等,這個當時就讓我感覺非常困惑。
使用spring mvc的dispatherservlet的url-pattern不就是經常用/作為匹配規則的嗎?
而且dispatherservlet一樣可以收到各種帶字尾的url請求,然後讓controller處理,一直都這麼用。
然後又是到處查資料,終於搞明白了:
tomcat或者其他容器,都有乙個預設servlet,當其他servlet的url-pattern都不匹配請求url時,該請求就會交給預設servlet處理,
然後呢,預設servlet的url-pattern就是/,當你的servlet的url-pattern用/匹配,那麼就代表你的servlet替代了預設servlet了。
那如果需要處理靜態資源什麼的,你的servlet就要自己處理了。
springmvc 的dispatherservlet就是這樣,靜態資源什麼的也是自己處理,或者在內部使用容器預設的servlet
spring mvc自己處理靜態資源就是我們熟悉的
spring mvc呼叫預設servlet處理也是熟悉的.
所以,最後總結,/和/*的區別就是:/*的匹配規則比/更詳細,所以,如果有/*與/同時存在,那麼/*會優先匹配。
一般如果我們自己寫servlet,那url-pattern是盡量不要設定成/以及/*,道理應該顯而易見的,除非專門的框架,否則正常的乙個servlet怎麼可能會去處理所有請求?
一般情況下建議:/*給filter使用,/給mvc框架實現的servlet使用
XmlNode與XmlElement的區別總結
今天在做c 操作xml文件的過程中,發現了兩個類 xmlnode和xmlelement。這兩個類的功能極其類似 因為我們一般都是在對element節點進行操作 上網蒐羅了半天,現在總結如下 1 通過繼承關係xmlelement繼承自xmllinkednode又繼承自xmlnode類,由此可知xmle...
DeleteDC 與 ReleaseDC的區別
deletedc 與 createdc 對應 releasedc 與 getdc 對應 借過來的 getdc 就要放還回去 releasedc 自已建立的 createdc 要自已刪除 deletedc 總之,要 用過之後,不留痕跡 還有以下的特殊情況,如cclientdc dc this 或cpa...
NORFlash與NAND Flash的區別
nand快閃儲存器晶元和nor快閃儲存器晶元的不同主要表現在 1 快閃儲存器晶元讀寫的基本單位不同 應用程式對nor晶元操作以 字 為基本單位。為了方便對大容量nor快閃儲存器的管理,通常將nor快閃儲存器分成大小為128kb或者64kb的邏輯塊,有時候塊內還分成扇區。讀寫時需要同時指定邏輯塊號和塊...