Spring中 與 的區別

2021-10-03 23:23:55 字數 1817 閱讀 6171

我是在整合 ssm 框架時發現的問題,這個問題以前我從沒深究過它 ——//*的區別。

學過 spring mvc 的小夥伴們肯定還記得,我們在配置前端控制器字符集過濾器時,通常在web.xml中是這樣配置的:

>

>

mvc-dispatcherservlet-name

>

>

org.springframework.web.servlet.dispatcherservletservlet-class

>

>

>

contextconfiglocationparam-name

>

>

classpath:springmvc.xmlparam-value

>

init-param

>

servlet

>

>

>

mvc-dispatcherservlet-name

>

>

/url-pattern

>

>

>

>

characterencodingfilterfilter-name

>

>

org.springframework.web.filter.characterencodingfilterfilter-class

>

>

>

encodingparam-name

>

>

utf-8param-value

>

init-param

>

filter

>

>

>

characterencodingfilterfilter-name

>

>

/*url-pattern

>

>

不知道大家有沒有發現,在前端控制器配置的是/,將攔截所有請求;字符集過濾器配置的是/*,也將過濾所有請求。不細看的話,它們好像作用都一樣,那麼大家有沒有想過既然都是攔截或過濾所有請求,那麼為什麼寫法會不同呢?

關於這個問題我在網上查了很多資料,基本上他們的回答要麼抄襲要麼回答不全面,或者有人都不屑回答這樣問題(他們認為沒有必須研究這個問題),經過我認真的推敲,有些人的答案還是可以借鑑的。

這個問題我們可以回到最原始的servletfilter,因為前端控制器就是乙個servlet字符集過濾器就是乙個filter,我從這方面下手,嘗試寫了幾個 demo,發現其實//*分別在servletfilter中有不同的意義。並得出下列 結論:

你會發現只要後面有.***都不會被匹配到。

/*:它會匹配所有的路徑和頁面,上述的例子均會被匹配到。

部落格中若有不恰當的地方,請您一定要告訴我。前路崎嶇,望我們可以互相幫助,並肩前行!

Spring中與區別

用 local 屬性指定目標其實是指向同一檔案內對應 id 屬性值為此 local 值的索引 local 屬性的值必須和目標bean的id屬性相同。如果同一檔案內沒有匹配的元素,xml解析器將提示錯誤。同樣,如果目標在同一xml檔案內,使用 local 變數是最好的選擇 為了盡可能早地知道錯誤 用 ...

Spring中idref與ref的區別

開始的時候我也以為idref和ref沒有什麼區別。後來在網上google了一下,發現這兩者之間除了名字差不多,效果是完全不一樣的。idref用來將容器內其他bean的id傳給 元素,同時提供錯誤驗證功能。例如 也就是將thetargetbean代表的bean id傳給targetname屬性。所以說...

spring與springmvc的區別與聯絡

一 spring框架的介紹 spring是乙個一站式的框架,提供了表現層 springmvc 到業務層 spring 再到資料層 springdata 的全套解決方案 spring的兩大核心ioc 控制反轉 和aop 面向切面程式設計 更是給我們的程式解耦和 的簡介提供了支援。二 springmvc...