程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Spring學習(五) SpringMVC

Spring學習(五) SpringMVC

編輯:關於JAVA

上一篇深入淺出Spring(四) Spring實例分析的博文中,咱們已經可以了解Spring框架的運行原理和實現過程,接下來咱們繼續講解Spring的一個延伸產品——Spring MVC

1、Spring MVC簡介

在開始演示Spring之前,首先來介紹一下Sprig MVC。Spring MVC是一個基於Model2的MVC框架,它圍繞DispatcherServlet這個核心類開展,DispatcherServlet是Spring MVC的負責截獲客戶端請求,組織不同的組件進行請求的處理,對處理的結果進行響應處理。整體實現框架圖如下圖所示:

2、Spring MVC分析

大致了解Spring MVC之後,我們做一個簡單Spring MVC的實例分析,參考實例已在文章末尾給出鏈接地址。分析主要從如下幾個方面進行:

A、啟用框架

啟用Spring MVC與Struts1相似,就是一個簡單的Servlet。通過客戶端發送Http請求,web應用服務器接受並判斷是否匹配Spring MVC核心類DispatcherServlet的請求路徑,如果匹配則轉發給DispatcherServlet進行處理。具體的web.xml文件配置參考給出的參考實例。對應上圖的如下部分:

這一部分是Servlet運行過程,與Spring MVC框架本身無關,僅僅是將請求轉發到了Spring MVC的核心類,如果有疑惑請參考之前的文章初識Servlets對Servlet運行過程進行了解。

URL:http://www.bianceng.cn/Programming/Java/201410/45839.htm

B、框架執行

Spring MVC框架的執行比較復雜,這裡簡單給大家介紹一下,主要分為如下兩步:

1)、DispatcherServelt 接受到Http請求之後,根據這個請求信息以及HandleMapping的配置找到處理請求的處理器Handler。

2)、找到Handler之後,通過HandlerAdapter對Handler進行封裝,再以統一的適配器接口調用Handler。

這裡介紹的有點抽象,簡單理解就是根據URL地址和這個URL與具體實現類的映射關系(HandleMapping)找到這個實現類(Handler)。具體實現調用的過程是通過使用適配器(HandlerAdapter)對具體實現類(Handler)進行封裝,然後調用再統一調用。對應上圖的如下部分:

映射的配置(HandleMapping)方式具體實現主要有兩種方式一種是配置文件(具體參考實例代碼),另一種是注解實現(具體參考實例代碼)。

C、框架反饋

Spring MVC框架最終可以反饋給客戶端的響應消息的類型非常豐富,可以是一個普通的HTML頁面,一個XML或JSON串,也可以是一張圖片或一個PDF文檔等不同的媒體形式。這裡簡單介紹一下反饋消息的流程,具體如下;

1)、Handler處理完成之後,會返回給DispatcherServlet一個ModelAndView

2)、DispatcherServlet通過ViewResolver中的相關配置,將ModelAndView包含的視圖邏輯名解析成真實的視圖對象View

3)、接下來,DispatcherServlet就使用這個View對象對ModelAndView中的模型數據進行視圖渲染並發送到客戶端。

這個過程具體對應為上圖的如下部分:

以上部分理解起來比較簡單與Struts框架基本雷同,這裡我們就不做多余的介紹了。

到此關於Spring MVC框架的相關內容,我們就先介紹這麼多,以後有時間,我再慢慢給大家介紹。建議大家對比之前的Struts學習,分析兩者的不同點和相似之處,這樣我們理解和使用就會變得更加靈活。

出處:http://www.cnblogs.com/zs234/

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved