Struts2學習筆記(一)初識Strut2
簡單介紹:
Struts框架是流行廣泛的一個MVC開源實現,而Struts2是Struts框架的新一代產品,是將Struts1和WebWork兩種技術進行相容、合併的全新的MVC框架。Struts2框架充分發揮了Struts1和WebWork這兩種技術的優勢,拋棄原來Struts1的缺點,使得Web開發更加容易。
Struts2是以WebWork為核心,採用攔截器機制對使用者的請求進行處理,是webwork的升級
使用優點:
無需與Servlet api整合,更易測試
優雅請求引數封裝
靈活的檢視技術
豐富的表示式語言
機動,靈活,簡單的配置
執行緒安全的控制器(Action)相對struts1而言
霸氣的外掛:和其他框架連結的插口
框架架構:
內建多個攔截器攔截棧, Struts2是以WebWork為核心,採用攔截器機制對使用者的請求進行處理
使用步驟:
步驟:
(1)客戶端瀏覽器傳送HTTP請求到Web應用
(2)Web容器將請求傳遞到標準ActionContextCleanUp過濾器以消除屬性,而不讓後續過濾器清楚,以延長Action中屬性(包括自定義屬性)的生命週期。ActionContextCleanUp作用
(3)再經過如stimesh等其他過濾器後,請求傳遞給StrutsPrepareAndExecuteFilter核心控制器
(4)StrutsPrepareAndExecuteFilter呼叫ActionMapper(Action對映器)確定呼叫哪個Action,再將控制權轉移給ActionProxy代理
(5)ActionProxy代理呼叫配置管理器ConfigurationManager從配置檔案struts.xml中讀取配置資訊,然後建立ActionInvocation物件
(6)ActionInvocation在呼叫攔截器鏈中的攔截器後再呼叫Action,根據Action返回的結果字串查詢對應的Result
(7)Result呼叫檢視模板,再以相反的順序執行攔截器鏈,返回HTTP響應
(8)HTTP響應以相反的順序返回給核心控制器StrutsPrepareAndExecuteFilter以及其他web.xml中定義的過濾器,最終返回給客戶端。
目錄
相關文章
- Redis學習筆記(一)——初識RedisRedis筆記
- Vue 學習筆記 (一) -- 初識 VueCli 3Vue筆記
- JVM學習筆記——初識JVMJVM筆記
- 【Nginx學習筆記】-初識NginxNginx筆記
- LevelDB學習筆記 (1):初識LevelDB筆記
- iOS逆向學習筆記 - 彙編(一) - 初識彙編iOS筆記
- 初識C語言(01)—學習筆記C語言筆記
- 初識Struts2
- MongDB學習筆記(一) 初遇篇筆記
- 我的 golang 學習筆記系列四:反射初識Golang筆記反射
- Qt Creator 原始碼學習筆記01,初識QTCQT原始碼筆記
- HTTP Client 學習筆記 (一) 初遇篇HTTPclient筆記
- Solidity語言學習筆記————1、初識Solidity語言Solid筆記
- Workerman學習筆記(一)初步認識筆記
- MySQL事務學習筆記(一) 初遇篇MySql筆記
- Spring 事務學習筆記(一) 初遇篇Spring筆記
- MyBatis原始碼學習筆記(一) 初遇篇MyBatis原始碼筆記
- [寒假學習筆記](二)Python初學筆記Python
- 筆記:初識Kafka筆記Kafka
- 筆記:初識Python筆記Python
- Redis學習(一)——初識RedisRedis
- 吳恩達機器學習筆記 —— 1 緒論:初識機器學習吳恩達機器學習筆記
- 前端筆記之JavaScript(一)初識JavaScript前端筆記JavaScript
- Neo4j 學習筆記(一) 初遇篇筆記
- 安卓初學基礎學習筆記安卓筆記
- 基於docker 初學 MongoDb 學習筆記DockerMongoDB筆記
- vtk學習記錄(三)——初識vtkRenderer
- 初級英語學習筆記01筆記
- 《golang筆記》第一篇-初識Golang筆記
- 學習筆記(一)筆記
- 機器學習學習筆記——基本知識機器學習筆記
- substrate學習筆記1:Substrate初體驗筆記
- 基礎知識學習筆記筆記
- python初學筆記Python筆記
- 《Kafka筆記》1、Kafka初識Kafka筆記
- 人臉識別學習筆記一:入門篇筆記
- kitten 學習教程(一) 學習筆記筆記
- Angular 學習筆記(一)Angular筆記