Spring工作流程描述

2021-06-29 16:31:55 字數 1048 閱讀 8338

1. 使用者向伺服器傳送請求,請求被spring 前端控制servelt dispatcherservlet捕獲;

2. 3. 

dispatcherservlet 根據獲得的handler,選擇乙個合適的handleradapter。(附註:如果成功獲得handleradapter後,此時將開始執行***的prehandler(...)方法)

4.  提取request中的模型資料,填充handler入參,開始執行handler(controller)。 在填充handler的入參過程中,根據你的配置,spring將幫你做一些額外的工作:

httpmessageconveter: 將請求訊息(如json、xml等資料)轉換成乙個物件,將物件轉換為指定的響應資訊

資料轉換:對請求訊息進行資料轉換。如string轉換成integer、double等

資料根式化:對請求訊息進行資料格式化。 如將字串轉換成格式化數字或格式化日期等

資料驗證: 驗證資料的有效性(長度、格式等),驗證結果儲存到bindingresult或error中

5.  handler

執行完成後,向

dispatcherservlet

返回乙個modelandview物件;

6.  根據返回的modelandview,選擇乙個適合的viewresolver(必須是已經註冊到spring容器中的

viewresolver)返回給

dispatcherservlet

;7. 

viewresolver 結合model和view,來渲染檢視

8. 將渲染結果返回給客戶端。

spring工作流程描述

為什麼spring只使用乙個servlet(dispatcherservlet)來處理所有請求?

首先,降低**耦合性。**重複。

其次,提高安全性。不是用過濾,**進行if判斷,若有疏漏,功虧一簣。

符合物件導向中的單一職責原則,**架構清晰,便於維護,最重要的是**可復用性高。如handleradapter可能會被用於處理多種handler。

Spring MVC工作流程描述

spring mvc 工作流程圖 圖一 圖二 1.使用者向伺服器傳送請求,請求被spring 前端控制servelt dispatcherservlet捕獲 3.dispatcherservlet 根據獲得的handler,選擇乙個合適的handleradapter。附註 如果成功獲得handler...

Struts工作流程

文章分類 招聘求職 乙個使用者的請求是通actionservlet來處理和 的。那麼,actionservlet如何決定把使用者請求 給哪個action物件呢?這就需要一些描述使用者請求路徑和action衍射關係的配置資訊了。在struts中,這些配置對映資訊都儲存在特定的xml檔案struts c...

zf工作流程

zend controller是使用mvc模式來構建乙個站點的基礎。zend controller體系是乙個輕量的,模組化和可擴充套件的體系。它只提供最核心的必要的部分,允許開發者有很大的自由來靈活地構建自己的站點。使用zend controller的站點,其檔案組織和 結構會比較相似。zend c...