每日一題,我就不信我講不清了w(゚Д゚)w

  1. springMVC是如何請求的?-2019.8.5

springMVC = struts2+spring.

請求涉及組件:前端控制器DispatcherServlet、處理器映射器HandlerMapping、處理器適配器HandlerAdapter、視圖解析器View Resolver、處理器Handler、視圖View

涉及組件的介紹

DispatcherServlet   由框架提供

接收請求,響應結果,相當於轉發器,中間處理器,減少其他組件耦合度。

相當於mvc模式中的c,DispatcherServlet是整個流程控制的中心,由它調用其他組件處理用戶的請求

HandlerMapping   由框架提供 根據請求的url查找Handler。負責根據用戶請求找到處理器Handler即Controller,SpringMVC提供了不同映射器實現不同的映射方式,例如:配置文件方式,實現接口方式,註解方式等.
HandlerAdapter   由框架提供 按照特定特定規則(HandlerAdapter要求的規則)去執行Handler,通過HandlerAdapter對處理器進行執行——適配器模式的應用
Handler   工程師開發 根據HandlerAdapter[適配器]的要求去做,Handler涉及具體業務需求,[即後端控制器用controller表示]
ViewResolver   由框架提供 進行視圖解析,根據邏輯視圖名解析成真正的視圖View
View   工程師開發 一個接口,支持不同View類型(jsp、freemarker、pdf...)

請求的使用順序或地點:前端控制器作爲中心,負責調用其他組件處理請求,當用戶發起請求來到前端控制器的時候:

1.前端控制器調用處理器映射器,解析到請求對應的處理器[代碼處理邏輯,Handler],返回 執行鏈[HandlerExecutionChain ]

2.前端控制器調用處理器適配器,執行處理器[Handler],返回 ModelAndView

3.前端控制器調用視圖解析器,進行視圖解析,返回 View

4.前端控制器 對視圖 進行 渲染,向用戶展示響應結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章