2015-01-13 17 views
9

我無法在下面的語法中找到正確的客戶端請求流。有人請澄清這裏發生了什麼嗎?Spring MVC請求和響應流程說明

Client(1) --> Dispatcher Servlet(2) --> Handler Mapping(3) --> Controller(4) --> 
ModelAndView(5) --> viewResolver(6) --> View(7) --> Client(1) 

如果可能的話,請說明在spring MVC過程中使用的相應spring類/接口是什麼。

+0

讀出部分7。1 [這裏](http://www.manning.com/walls4/Sample-Ch07.pdf)瞭解基礎知識並完成第7章的端到端理解。 –

+0

http://javadecodedquestions.blogspot.in/2013/03/understanding-spring-mvc.html – RBP

回答

14
  1. 第一個請求將由DispatcherServlet收到。
  2. DispatcherServlet將接受HandlerMapping的幫助,並瞭解與給定請求關聯的@Controller類名。
  3. 所以請求轉移到@Controller,然後@Controller將處理由執行適當的方法和返回ModelAndView對象(包括模型數據和視圖名稱)請求回到DispatcherServlet的
  4. 現在DispatcherServlet發送的模型對象的ViewResolver到獲取實際的視圖頁面。
  5. 最後,DispatcherServlet會將Model對象傳遞給View頁面以顯示結果。
+1

Thank's Harshal Patil。 – Balasubramani

10

Harshal Patil的回答很不錯,但增加了一個描繪Spring MVC框架中請求流的繪圖。

flow of request in the Spring MVC Framework

+0

也許值得注意的是,所有這些步驟之間都有攔截器。 – NemanjaT

1

泉流量 從JSP/HTML第一個請求將達到dispacher的servlet, 基於XML的文件,它會去特定的控制器, 將控制器它搜索請求映射後,根據請求映射,它將轉到特定的方法並遵循指令,並採用模型和視圖,並通過dispacher servlet將其提供給視圖解析器,視圖解析器將顯示該視圖。

0

Spring MVC的執行流程

  1. 步驟:一是請求將由DispatcherServlet的接收。
  2. 步驟:DispatcherServlet將接受HandlerMapping的幫助,並且 瞭解與給定的 請求關聯的Controller類名稱。
  3. 步驟:請求傳輸到控制器,然後控制器 將通過執行適當的方法來處理請求, 返回到DispatcherServlet的返回 的ModeAndView對象(包含模型數據和視圖名稱)。
  4. 步驟:現在,DispatcherServlet將模型對象發送到 ViewResolver以獲取實際視圖頁面。
  5. 步驟:最後,DispatcherServlet將Model對象傳遞到 View頁面以顯示結果。

enter image description here