springMVC詳解

  Spring Web MVC是一種基於Java的實現了Web MVC設計模式的請求驅動類型的輕量級Web框架,即使用了MVC架構模式的思想,將web層進行職責解耦,基於請求驅動指的就是使用請求-響應模型,框架的目的就是幫助我們簡化開發,Spring Web MVC也是要簡化我們日常Web開發的。

  與之相反的是基於組件的、事件驅動的Web框架,如Tapestry、JSF等,在此就不介紹了。

  Spring Web MVC也是服務到工作者模式的實現,但進行可優化。前端控制器是DispatcherServlet;應用控制器其實拆爲處理器映射器(Handler Mapping)進行處理器管理和視圖解析器(View Resolver)進行視圖管理;頁面控制器/動作/處理器爲Controller接口(僅包含ModelAndView handleRequest(request, response) 方法)的實現(也可以是任何的POJO類);支持本地化(Locale)解析、主題(Theme)解析及文件上傳等;提供了非常靈活的數據驗證、格式化和數據綁定機制;提供了強大的約定大於配置(慣例優先原則)的契約式編程支持。

SpringMVC詳解

第一步:用戶發送請求到前端控制器(DispatcherServlet)。

第二步:前端控制器請求 HandlerMapping 查找 Handler,可以根據 xml 配置、註解進行查找。

第三步: 處理器映射器 HandlerMapping 向前端控制器返回 Handler

第四步:前端控制器調用處理器適配器去執行 Handler

第五步:處理器適配器執行 Handler

第六步:Handler 執行完成後給適配器返回 ModelAndView

第七步:處理器適配器向前端控制器返回 ModelAndView

    ModelAndView 是SpringMVC 框架的一個底層對象,包括 Model 和 View

第八步:前端控制器請求試圖解析器去進行視圖解析

    根據邏輯視圖名來解析真正的視圖。

第九步:試圖解析器向前端控制器返回 view

第十步:前端控制器進行視圖渲染

    就是將模型數據(在 ModelAndView 對象中)填充到 request 域

第十一步:前端控制器向用戶響應結果


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