標籤:ada patch 還需要 man orm 簡單 art over mvc架構
Spring MVC 瞭解WebApplicationContext中特殊的bean類型
Spring的DispatcherServlet
使用了特殊的bean來處理請求、渲染視圖等,這些特定的bean是Spring MVC架構的一部分。如果你想指定使用哪個特定的bean,你可以在web應用上下文WebApplicationContext
中簡單地配置它們。當然這隻是可選的,Spring MVC維護了一個預設的bean列表,如果你沒有進行特別的配置,架構將會使用預設的bean。下一小節會介紹更多的細節,這裡,我們將先快速地看一下,DispatcherServlet
都依賴於哪些特殊的bean來進行它的初始化。
bean的類型 |
作用 |
HandlerMapping |
處理器映射。它會根據某些規則將進入容器的請求映射到具體的處理器以及一系列前處理器和後處理器(即處理器攔截器)上。具體的規則視HandlerMapping 類的實現不同而有所不同。其最常用的一個實現支援你在控制器上添加註解,配置請求路徑。當然,也存在其他的實現。 |
HandlerAdapter |
處理器適配器。拿到請求所對應的處理器後,適配器將負責去調用該處理器,這使得DispatcherServlet 無需關心具體的調用細節。比方說,要調用的是一個基於註解配置的控制器,那麼調用前還需要從許多註解中解析出一些相應的資訊。因此,HandlerAdapter 的主要任務就是對DispatcherServlet 屏蔽這些具體的細節。 |
HandlerExceptionResolver |
處理器異常解析器。它負責將捕獲的異常映射到不同的視圖上去,此外還支援更複雜的異常處理代碼。 |
ViewResolver |
視圖解析器。它負責將一個代表邏輯視圖名的字串(String)映射到實際的檢視類型View 上。 |
LocaleResolver & LocaleContextResolver |
地區解析器 和 地區上下文解析器。它們負責解析用戶端所在的地區資訊甚至時區資訊,為國際化的視圖定製提供了支援。 |
ThemeResolver |
主題解析器。它負責解析你web應用中可用的主題,比如,提供一些個人化定製的布局等。 |
MultipartResolver |
解析multi-part的傳輸請求,比如支援通過HTML表單進行的檔案上傳等。 |
FlashMapManager |
FlashMap管理器。它能夠儲存並取回兩次請求之間的FlashMap 對象。後者可用於在請求之間傳遞資料,通常是在請求重新導向的情境下使用。 |
Spring MVC 瞭解WebApplicationContext中特殊的bean類型