Struts2 體系結構


由高層次,Struts2是一個上拉型MVC(MVC2)框架。在Struts2的模型 - 檢視 - 控制器模式,實現以下五個核心部件:

  • Actions

  • Interceptors

  • Value Stack / OGNL

  • Results / Result types

  • View technologies

Struts 2 從傳統的MVC框架操作需要的模型,而不是在控制器角色略有不同,雖然有一些重疊。

Struts 2 Architecture

上面的圖描繪Struts2的高層體系結構模型,檢視和控制器。控制器實現一個Struts2的排程Servlet過濾器,以及攔截,模型是實施行動和結果型別和結果的組合檢視。值棧和OGNL提供的共同點,其他元件之間的連線和整合。

除了從上面的成分,會有很多的資訊,涉及到組態。組態Web應用程式,以及組態的動作,攔截器,結果等。

這是MVC模式 Struts2的體系結構概述。我們將在後續章節中更詳細通過每個元件的介紹。

請求的生命週期:

根據上述雙字母組合,可以在Struts 2解釋使用者的請求生命週期,如下所示:

  • 使用者傳送請求到伺服器的某些資源的請求(即頁面)。

  • FilterDispatcher 檢視請求,然後確定適當的動作。

  • 組態的攔截功能,適用於如驗證,檔案上傳等。

  • 所選的動作會執行,以執行所請求的操作。

  • 同樣,組態的攔截器做任何後期處理,如果需要的話。

  • 最後其結果由檢視準備,並且將結果返回給使用者。