structs2 的工作原理

2021-06-22 23:14:19 字數 740 閱讀 3031

actionproxy和actioninvocation

actionproxy是在xwork和真正的action之間充當**角色,在通過框架執行action的過程中,因為使用的是**而不是直接操縱物件,所以在**中封裝***、result等二外的**。actionproxy持有actioninvocation物件。actioninvocation代表了action執行的當前狀態。它持有***(按順序排列),action例項,結果對映和actioncontext.

actioncontext

objectfactory

它是負責構建核心框架物件的。使用者可以自己註冊自己的objectfactory實現來控制這些物件的例項化。使用方法:定製的objectfactory必須直接或者間接的繼承自com.opensymphony.xwork2.objectfactory類,並要求提供乙個預設的無引數的構造方法。註冊自己的objectfactory可以在classpath的根路徑下建立structs.properties,然後輸入下面的內容:::structs.obejctfactory=myobjectfactory

這樣就會把轉化成功了。

result

每乙個action執行都會返回乙個string型別的結果碼,用於從配置的result元素列表中選擇對應的result。result在structs.xml中配置。

structs2 工作原理

乙個請求在struts2框架中的處理大概分為以下幾個步驟 1 客戶端初始化乙個指向servlet容器 例如tomcat 的請求 2 這個請求經過一系列的過濾器 filter 這些過濾器中有乙個叫做actioncontextcleanup的可選過濾器,這個過濾器對於struts2和其他框架的整合很有幫...

Structs2工作流程

1 客戶端 client 向action髮用乙個請求 request 2 container通過web.xml對映請求,並獲得控制器 controller 的名字 3 容器 container 呼叫控制器 strutsprepareandexecutefilter或filterdispatcher ...

Structs2 命名空間

在學習structs2的過程中,遇到了namsapce,雖然比較好理解,但是在使用的過程中還是遇到些問題,便將其記錄下來。作用 為了解決包含同乙個action的問題,在相同的命名空間裡不能存在相同的action,但是不同的命名空間裡,可以存在相同的action。須知 structs2不支援單獨為ac...