springMVC入門簡介

一、springMVC

MVC模型,Spring家族的牛逼框架之一,出自于這位爺之手,Rod Johnson。

二、核心架構

圖一: springMVC核心架構圖

三、具體流程

  • 用戶請求——>DispatcherServlet

控制器作為統一訪問點,進行全局的流程控制。

  • DispatcherServlet——>HandlerMapping

HandlerMapping將會把請求映射為HandlerExecutionChain對象(包含一個Handler處理器和多個HandlerInterceptor攔截器

  • DispatcherServlet——>HandlerAdapter

HandlerAdapter將會把處理器包裝為適配器,從而支持多種類型的處理器。(適配器設計模式)

  • HandlerAdapter——>處理器功能處理方法的調用

HandlerAdapter將會根據適配的結果調用真正的處理器的功能處理方法,完成功能處理;并返回一個ModelAndView對象(包含模型數據、邏輯視圖名

  • ModelAndView邏輯視圖名稱——>ViewResolver

ViewResolver將把邏輯視圖名解析為具體的View,通過這種策略模式,很容易更換其他視圖技術。

  • View——>渲染

View會根據傳進來的Model模型數據進行渲染。

  • 返回控制權給DispatcherServlet,由DispatcherServlet返回響應給用戶,到此一個流程結束。

四、開發步驟

  1. 在web.xml中配置DispatcherServlet,從而攔截請求
  2. 在servletName-servlet.xml中配置HandlerMapping,將請求映射到處理器
  3. 在servletName-servlet.xml中配置HandlerAdapter,支持多種類型的處理器
  4. 在servletName-servlet.xml中配置ViewResolver,將邏輯視圖名解析為具體視圖技術
  5. 在servletName-servlet.xml中配置處理器Controller,進行業務邏輯處理

五、后續版本

  • Spring2.5 引入注解式處理器支持,通過@Controller 和 @RequestMapping 注解定義我們的處理器類

需要通過處理器映射 DefaultAnnotationHandlerMapping 和處理器適配器 AnnotationMethodHandlerAdapter 來開啟支
持@Controller 和 @RequestMapping 注解的處理器。

  • Spring3.1提供新的@Contoller 和@RequestMapping 注解支持類

處理器映射 RequestMappingHandlerMapping 和 處理器適配器RequestMappingHandlerAdapter 組合來代替 Spring2.5 開始的處理器映射 DefaultAnnotationHandlerMapping 和處理器適配器AnnotationMethodHandlerAdapter


參考資料

http://jinnianshilongnian.iteye.com/blog/1594806

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容