2011-12-27 19 views

回答

9

如果在配置中未明確指定處理程序映射,則BeanNameUrlHandlerMapping默認情況下會創建並使用。

從你鏈接的文章:。

「默認情況下,DispatcherServlet使用BeanNameUrlHandlerMapping映射傳入請求的BeanNameUrlHandlerMapping使用bean名稱作爲URL模式由於BeanNameUrlHandlerMapping默認情況下使用,無需執行任何單獨的配置。「

8

Controller和HandlerMapping是Spring MVC中的兩個不同的東西。 控制器是用於處理請求的實際Java類。我們在類定義的頂部聲明@ControllerHandlerMapping是在Spring框架的類中構建的。 Spring框架中有許多hanlder映射,如BeanNameUrlHandlerMapping,ControllerClassNameHandlerMapping等。默認情況下,BeanNameUrlHandlerMapping用於映射請求。該類在所有控制器中進行搜索,將該特定請求映射到該方法。

0

處理程序映射作爲分派器servlet的幫助器。它有助於確定適用於Dispatcher servlet的控制器bean。缺省處理程序映射Bean是DefaultUrlHandlerMapping

它通過url標識控制器bean。它將URL中的名稱與控制器bean相匹配。如果匹配,它將返回到DispatcherServlet,最後servlet執行控制器的業務方法並將ModelAndView對象返回給調度程序servlet。

-1
  • DispatcherServlet查詢HandlerMapping並調用與該請求相關聯的Controller。
  • Controller通過調用相應的服務方法來處理請求,並將一個ModeAndView對象返回給DispatcherServlet。
  • Controller是特定類型的處理程序,即Controller基於用戶輸入返回不同的視圖。但所有處理程序都不是Controllers
  • HandlerMappingHandlerMapping策略用於地圖對某些處理程序控制器(或控制器)和/或方法的HTTP客戶端請求。這是基於請求URL和HTTP方法完成的,但也可能包含請求參數,請求標頭或其他自定義因素。例如,SimpleUrlHandlerMappingBeanNameUrlHandlerMapping
+0

如果兩個問題有相同的答案,他們極有可能是重複的。不要加倍發佈答案。投票結束重複的問題。 –

相關問題