struts2的工作原理

2021-06-21 23:08:43 字數 1134 閱讀 8337

struts2並不是乙個陌生的web框架,它是以webwork的設計思想為核心,吸收struts1的優點,可以說

struts2是struts1和webwork結合的產物。 

struts2 的工作原理圖:

乙個請求在struts2框架中的處理分為以下幾個步驟:

1.客戶端發出乙個指向servlet容器的請求(tomcat);

2.這個請求會經過圖中的幾個過濾器,最後會到達filterdispatcher過濾器。

3.過濾器filterdispatcher是struts2框架的心臟,在處理使用者請求時,它和請求一起相互配合訪問struts2

的底層框架結構。在web容器啟動時,struts2框架會自動載入配置檔案裡相關引數,並轉換成相應的類。

需要用到的action。

4.如果找到需要呼叫的action,過濾器會把請求的處理交給actionproxy。actionproxy為action的**物件

。actionproxy通過configurationmanager詢問框架的配置檔案,找到需要呼叫的action類。

5.actionproxy建立乙個actioninvocation的例項。actioninvocation在actionproxy層之下,它表示了

action的執行狀態,或者說它控制的action的執行步驟。它持有action例項和所有的interceptor。 

6.actioninvocation例項使用命名模式來呼叫,1. actioninvocation初始化時,根據配置,載入action相

關的所有interceptor。2. 通過actioninvocation.invoke方法呼叫action實現時,執行interceptor。在

呼叫action的過程前後,涉及到相關***(intercepetor)的呼叫。

7. 一旦action執行完畢,actioninvocation負責根據struts.xml中的配置找到對應的返回結果。返回結果

通常是(但不總是,也可能是另外的乙個action鏈)乙個需要被表示的jsp或者freemarker的模版。

在表示的過程中可以使用struts2 框架中繼承的標籤。

Struts2 工作原理

1 客戶端初始化乙個指向servlet容器 例如tomcat 的請求 2 這個請求經過一系列的過濾器 filter 這些過濾器中有乙個叫做actioncontextcleanup的可選過濾器,這個過濾器對於struts2和其他框架的整合很有幫助,例如 sitemesh plugin 5 action...

struts2 工作原理

struts2並不是乙個陌生的web框架,它是以webwork的設計思想為核心,吸收struts1的優點,可以說 struts2是struts1和webwork結合的產物。struts2 的工作原理圖 乙個請求在struts2框架中的處理分為以下幾個步驟 1.客戶端發出乙個指向servlet容器的請...

struts2工作原理

struts2工作原理 程式設計原理 使用者傳送http請求 web伺服器 tomcat 載入web.xml web部署描述檔案 檔案 執行struts核心控制器 strutsprepareandexecutefilter或者filterdispatcher 載入struts.xml檔案,通過請求a...