【Spring】(12)Spring MVC 介紹

一、Spring MVC 簡介

1.Spring MVC 建鍵介紹

Spring Web MVC是基於Servlet API構建的原始Web框架,並且從一開始就已包含在Spring框架中。正式名稱“ Spring Web MVC”來自其源模塊(spring-webmvc)的名稱,但它通常被稱爲“ Spring MVC”。

與Spring Web MVC並行,Spring Framework 5.0引入了一個反應式堆棧Web框架,其名稱“ Spring WebFlux”也基於其源模塊(spring-webflux)。本節介紹Spring Web MVC。

Spring Web MVC 和Spring MVC是同一個東西,只是我們通常稱之爲Spring MVC。它是Spring Framework的一部分,是基於Java實現的MVC輕量級web框架。

1.MVC

  • MVC是模型(Model)是視圖(Views)控制層(Controller)的縮寫,是一種軟件設計規範;
  • 是將業務邏輯、數據、顯示分離的方法來組織代碼;
  • MVC 主要作用是降低了視圖於業務邏輯鍵的雙向耦合;
  • MVC 不是一種設計模式,MVC是一種架構模式。

Model(模型):數據模型,提供要展示的數據,因此包含數據和行爲。(就是Dao層和Service層)

View(視圖):負責進行模型的展示,一般就是我們見到的用戶界面,客戶想看到的東西。

Controller(控制器):接收用戶請求,委託給模型進行處理(狀態改變),處理完畢後把返回的模型數據返回給視圖,由視圖負責顯示。(也就是說控制器作了一個調度員的工作)

2.爲什麼要學Spring MVC

之前我們都是使用Servlet,但是隨着項目越來越大,Servlet會變得非常多,難以管理。現在學習Spring MVC會變得非常簡單。

Spring MVC特點:

  • 輕量級、簡單易學
  • 高效、基於請求響應的MVC框架
  • 與Spring兼容性好,無縫結合(我們可以將Spring MVC中要用到bean註冊到Spring中)
  • 約定由於配置
  • 功能強大:RESTful、數據驗證、格式化、本地化、主題等
  • 簡潔靈活

Spring的web框架圍繞DispatcherServlet[調度Servlet]設計。

二、分發器 或 調度器(DispatcherServlet)

2.分發器

Spring的web框架圍繞DispatcherServlet設計。DispatcherServlet的作用是將請求分發到不同的處理器。我們可以採用基於註解的controller聲明開發,十分簡潔;

Spring MVC框架像許多其他MVC框架一樣,**以請求爲驅動,圍繞一箇中心Servlet分派請求及提供其他功能,DispatcherServlet是一個實際的Servlet(繼承自HttpServlet基類)

在這裏插入圖片描述

2.處理流程

Spring Web MVC中的請求處理工作流程

在這裏插入圖片描述

參考自官網:spring 4 的 22.2 The DispatcherServlet

中文版:

當發起請求時被前置的控制器攔截到請求,根據請求參數生成代理請求,找到請求對應的實際控制器,控制器處理請求,創建數據模型,訪問數據庫,將模型響應給中心控制器,控制器使用模型與視圖渲染視圖結果,將結果返回給中心控制器,再將結果返回給請求者。

在這裏插入圖片描述
參考:SpringMVC學習(一)


相關

我的該分類的其他相關文章,請點擊:【Spring + Spring MVC + MyBatis】文章目錄

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