struts2工作流程

2021-08-05 22:52:00 字數 822 閱讀 5575

1.客戶端發出乙個httpservletrequest請求,這個請求經過一系列的過濾器filter(如actioncontextcleanup等),這些過濾器最終會呼叫filterdispatcher類(現在是strutsprepareexcutefilter)的serviceaction方法,filterdispatcher是控制器的核心,就是mvc的struts2實現中控制層的核心

3.actionproxy通過configuration manager(struts.xml)詢問框架的配置檔案,找到需要呼叫的action類

4.actionproxy類中擁有乙個actioninvocation例項,呼叫其invoke方法,在呼叫invoke方法之前,會根據配置載入action相關的所有***interceptor,呼叫invoke方法過程是順序呼叫所有的***的intercept方法,最後呼叫action類中的方法(其中,***的intercept方法中又會呼叫actioninvacation的invoke方法)

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

6.最後通過httpservletresponse返回客戶端乙個響應

需要注意的是:

1、呼叫action的過程前後,涉及到相關***(intercepter)的呼叫

2、struts 2

的核心控制器是

filterdispatcher,有3

個重要的方法:

destroy()

、dofilter()

和init()

,可以在

struts 2

struts2工作流程

1 客戶端傳送請求 2 請求先通過actioncontextcleanup filterdispatcher 6 actionproxy建立乙個actioninvocation的例項 7 actioninvocation呼叫真正的action,當然這涉及到相關 的呼叫 8 action執行完畢,ac...

struts2工作流程

圖2.1 struts2.0體系架構圖 針對上節體系架構圖,下面分步說明執行流程 客戶端初始化乙個指向 servlet 容器 例如 tomcat 的請求 這個請求經過一系列的過濾器 filter 這些過濾器中有乙個叫做 actioncontextcleanup 的可選過濾器,這個過濾器對於 stru...

struts2的工作流程

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