springmvc學習筆記

1.Springmvc是什麼

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

 

1.1  Springmvc 架構圖

一、DispacherServlet前端控制器web

負責用戶請求和響應,是一箇中央控制器(調度),調用HandlerMapping查找Handler,調用HandlerAdapter處理器適配器執行Handler,調用ViewResolver視圖解析器去解析視圖,有了DispacherServlet有利於框架擴展,減小了各各組件之間耦合性。spring

 

二、HandlerMapping處理器映射器設計模式

不須要開發,使用框架提供的數組

負責查找Handler(經常使用action),經過xml配置方式或註解方式將Handler類和request請求Handler連接地址進行對應配置。瀏覽器

三、HandlerAdapter處理器適配器tomcat

不須要開發,使用框架提供的服務器

Springmvc提供了不少種適配器,註解適配器支持註解開發、原始servlet適配器(HanderRequestAdapter)支持原始servlet的執行。架構

負責執行Handler,適配器是按照必定的規則去執行Handler,調用Handler返回的結果是ModelAndView,ModelAndView將Model和view封裝起來(模型數據和視圖)mvc

 

四、ViewResolver視圖解析器

不須要開發,使用框架提供的

負責進行視圖解析,返回View,框架執行不少類型的View(jstlView、pdfView。。。)

 

五、Handler處理器(須要開發)

須要開發,按照適配器的規則開發,好比適配器要求Handler實現某個接口,Handler必須實現接口。

 

六、View視圖頁面(jsp) (須要開發)

須要開發,jsp+jstl。爲了視圖通用性建議使用第三方框架,jstl。

 

處理器映射器、處理器適配器、視圖解析器稱爲springmvc的三大件。

 

 

HTTP 協議簡介

1.2  HTTP 簡介/HTTP   SSL

HTTP(Hypertext Transfer Protocol,超文本傳輸協議①)是在萬維網上進行通訊時

所使用的協議方案。HTTP 有不少應用,但最著名的是用於Web 瀏覽器和Web 服

務器之間的雙工通訊。

1.3   HTTP報文

報文組成

起始行

報文的第一行就是起始行,在請求報文中用來講明要作些什麼,在響應報文中說

明出現了什麼狀況。

• 首部字段

起始行後面有零個或多個首部字段。每一個首部字段都包含一個名字和一個值,爲

了便於解析,二者之間用冒號(:)來分隔。首部以一個空行結束。添加一個首

部字段和添加新行同樣簡單。

• 主體

空行以後就是可選的報文主體了,其中包含了全部類型的數據。請求主體中包括

了要發送給Web 服務器的數據;響應主體中裝載了要返回給客戶端的數據。起

始行和首部都是文本形式且都是結構化的,而主體則不一樣,主體中能夠包含任意

的二進制數據(好比圖片、視頻、音軌、軟件程序)。固然,主體中也能夠包含

文本

1.4  請求實例

1.5   一些常見的HTTP方法

GET 從服務器向客戶端發送命名資源

PUT 未來自客戶端的數據存儲到一個命名的服務器資源中去

DELETE 從服務器中刪除命名資源

POST 將客戶端數據發送到一個服務器網關應用程序

HEAD 僅發送命名資源響應中的HTTP 首部

1.6  HTTP狀態碼

常見狀態碼

200 OK。文檔正確返回

302 Redirect(重定向)。到其餘地方去獲取資源

404 Not Found(沒找到)。沒法找到這個資源

405 Method Not Allowed(不容許使用的方法)

406 Not Acceptable(沒法接受) 客戶端能夠指定一些參數來講明但願接受哪些類型的實體。服務器沒有資源與客可接受的URL 相匹配時可以使用此代碼

 

請求中有一個所請求的URI 不支持的方法。響應中

應該包含一個Allow 首部,以告知客戶端所請求的

資源支持使用哪些方法

狀態碼分類

整體範圍已定義範圍類  別

100~199 100~101 信息

200~299 200~206 成功

300~399 300~305 重定向

400~499 400~415 客戶端錯誤

500~599 500~505 服務器錯誤

1.7

  

處理器映射器:

 

處理器適配器:使用下面的適配器

 

經過上面代碼能夠看出,若是Handler實現了Controller接口,那麼就能夠完成執行工做。

 

視圖解析器

若是在classpath下有jstl的jar包,那麼就不須要配置以下內容

第四步:編寫Handler處理器(編寫action)

按照適配器要求的規則

由於用了註解,因此註釋掉了其餘沒必要要的代碼

第五步:編寫jsp視圖頁面 

   建立一個JSP頁面,寫出你想輸出的文字就能夠.

第六步:啓動tomcat運行工程

   在瀏覽器輸入localhost:8080/項目名/本身起的名(bean name),點擊運行就能夠了.

 

 

 

最後,

總結經常使用的註解以下:

  Namespace:指定命名空間。

  ParentPackage:指定父包。

  Result:提供了Action結果的映射。(一個結果的映射)

  Results:「Result」註解列表

  ResultPath:指定結果頁面的基路徑。

  Action:指定Action的訪問URL。

  Actions:「Action」註解列表。

  ExceptionMapping:指定異常映射。(映射一個聲明異常)

  ExceptionMappings:一級聲明異常的數組。

  InterceptorRef:攔截器引用。

  InterceptorRefs:攔截器引用組。

相關文章
相關標籤/搜索