鍍金池/ 教程/ Java/ 體系結(jié)構(gòu)
注釋
主題/模板
驗證
有用的資源
Struts 2 注解類型
實例
攔截器
異常處理
表單標簽
結(jié)果類型
值棧/OGNL
Spring 集成
數(shù)據(jù)標簽
環(huán)境配置
配置
類型轉(zhuǎn)換
動作
Hibernate 集成
本地化
發(fā)送郵件
Ajax 標簽
數(shù)據(jù)庫訪問
體系結(jié)構(gòu)
文件上傳
Tiles 集成
概述
基本的 MVC 架構(gòu)
控制標簽

體系結(jié)構(gòu)

從一個高水平看,Struts 2 是一個 pull-MVC(或 MVC2)框架。Struts 2 的模型-視圖-控制器模式由下面的五個核心部件實現(xiàn):

  • 動作

  • 攔截器

  • 值棧/OGNL

  • 結(jié)果/結(jié)果類型

  • 視圖技術(shù)

Struts 2 與傳統(tǒng)的 MVC 框架稍有不同,其中動作擔(dān)任模型的角色,而不是控制器的角色,雖然有一些重疊。

http://wiki.jikexueyuan.com/project/struts-2/images/struts_2_architecture.gif" alt="" />

上面的圖描繪模型,視圖和控制器到 Struts 2 高級架構(gòu)??刂破魇怯?Struts 2 調(diào)度 servlet 過濾器和攔截器實現(xiàn)的,模型是由動作實現(xiàn)的,視圖是由結(jié)果類型和結(jié)果結(jié)合而成的。值棧和 OGNL 提供共同主線,連接和集成其他組件。

除了上面的組件,還有很多與配置相關(guān)的信息。不僅要配置 web 應(yīng)用程序,也要配置動作,攔截器,結(jié)果,等等。

這是 Struts 2 MVC 模式的體系結(jié)構(gòu)的概述。我們將在后續(xù)章節(jié)中更詳細的介紹每個組件。

請求生命周期

以上面的圖為基礎(chǔ),它可以解釋 Struts 2 中用戶的請求的生命周期,如下所示:

  • 為了請求一些資源(即頁面),用戶發(fā)送請求到服務(wù)器。

  • FilterDispatcher 查看請求,然后確定適當(dāng)?shù)膭幼鳌?/p>

  • 配置的攔截器功能適用于如驗證,文件上傳等等。

  • 執(zhí)行選定的動作來執(zhí)行所請求的操作。

  • 再次,如果需要,配置的攔截器應(yīng)用于做任何后處理。

  • 最后由視圖準備好的結(jié)果,并且將結(jié)果返回給用戶。
上一篇:注釋下一篇:Struts 2 注解類型