SpringMVC框架基於組件方式執行流程圖
執行流程分析
- (1)客戶端發送Request請求(該請求包含路徑/xxx),發送到前端控制器 DispatcherServlet(指揮中心)
- (2、3)DispatcherServlet查找處理器映射器 HandlerMapping,找到Controller類中對應註解部分path=xxx的方法,並返回具體的Controller類以及該類中該方法的執行鏈到DispatcherServlet
- (4) 但是DispatcherServlet並不會執行方法,它只能起到控制中轉的作用,所以,DispatcherServlet又開始了指揮,找到處理器適配器 HandlerAdapter,所有的Controller類以及它們各自攜帶的方法都被轉發到該適配器
- (5、6、7)通過適配器適配之後,執行方法,返回一個ModelAndView(視圖頁面,可理解爲方法返回值)到DispatcherServlet
- (8)之後指揮中心又將ModelAndView轉發到視圖解析器 ViewResolver進行解析
- (9、10)ViewResolver根據發來的方法返回結果,進行解析,最終可以跳轉到xxx.jsp頁面
- (11)最後前端控制器把結果頁面Response響應給客戶端,即完成了一次請求響應。