struts2 0的工作原理

2021-06-18 00:05:10 字數 1960 閱讀 7997

j2ee框架

struts2

並不是乙個陌生的

web框架,它是以

webwork

的設計思想為核心,吸收

struts1

的優點,可以說

struts2

是struts1

和webwork

結合的產物。

struts2 

的工作原理圖:

乙個請求在

struts2

框架中的處理分為以下幾個步驟: 1.

客戶端發出乙個指向

servlet

容器的請求

(tomcat);

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

filterdispatcher

過濾器。 3.

過濾器filterdispatcher

是struts2

框架的心臟,在處理使用者請求時,它和請求一起相互配合訪問

struts2

的底層框架結構。在

web容器啟動時,

struts2

框架會自動載入配置檔案裡相關引數,並轉換成相應的類。 如:

configurationmanager、和

objectfactory

。configurationmanager

存有配置檔案的一

些基本資訊,

存有action

的配置資訊。在請求過程中所有的物件(

action

,results,

interceptors

,等)都是通過

objectfactory

來建立的。過濾器會通過詢問

類來查詢請求中

需要用到的

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 

框架中繼承的標籤。www.520xunlong.com

struts2 0的 的使用

ognl支援類似資料庫中的投影 projection 和選擇 selection 投影就是選出集合中每個元素的相同屬性組成新的集合,類似於關聯式資料庫的字段操作。投影操作語法為 collection.其中 是這個集合中每個元素的公共屬性。例如 group.userlist.將獲得某個group中的所...

Struts 2 0 解讀筆記

凱文 公尺特尼克今年2月初採用安裝了winxp版本的筆記本準備黑掉某網域名稱為cn的中國 誰知剛登陸該站點時就被安裝了50個難以解除安裝的外掛程式,導致計算機網路癱瘓,導致攻擊失敗。沒辦法只能格式化硬碟,重灌系統!經過了這次教訓之後,凱文 公尺特尼克事先安裝了多種防火牆及防毒軟體,一切準備就緒之後,...

Struts 2 0 解讀筆記

1 在資料庫層做設計,充分利用空間換時間的方法,使用資料冗餘。精心優化加入索引 2 開啟資料庫cache,並根據試執行結果,除錯到最佳引數 3 php adodb使用cache快取sql語句的結果 4 使用pear的cache快取系統內資料 5 使用鉤子函式將前台html頁面快取成靜態檔案存在硬碟上...