struts 2框架本身大致可以分為3個部分:核心控制器
filterdispatcher、業務控制器
action和使用者實現的企業業務邏輯元件。
核心控制器filterdispatcher是struts 2框架的基礎,包含了框架內部的控制流程和處理機制。
業務控制器action和業務邏輯元件是需要使用者來自己實現的。
struts 2的工作流程相對於struts 1要簡單,與webwork框架基本相同,所以說struts 2是webwork的公升級版本。基本簡要流程如下:
1 、客戶端初始化乙個指向servlet容器的請求;
2、這個請求經過一系列的過濾器(filter)
(這些過濾器中有乙個叫做actioncontextcleanup的可選過濾器,
這個過濾器對於struts2和其他框架的整合很有幫助,例如:sitemesh plugin)
3 、接著filterdispatcher被呼叫,
filterdispatcher把請求的處理交給actionproxy
5、actionproxy通過configuration manager詢問框架的配置檔案,
找到需要呼叫的action類
6、actionproxy建立乙個actioninvocation的例項。
7、actioninvocation例項使用命名模式來呼叫,
在呼叫action的過程前後,涉及到相關***(intercepter)的呼叫。
9、響應的返回是通過我們在web.xml中配置的過濾器
10、如果actioncontextcleanup是當前使用的,則filterdispatecher將不會清理sreadlocal actioncontext;如果actioncontextcleanup不使用,則將會去清理sreadlocals。
Struts2 請求執行流程
你所有的成功,都是來自你的努力,而你的努力,就是讓自己變得值錢起來。我們共勉 乙個請求在struts2框架中的處理步驟 客戶端初始化乙個指向servlet容器的請求 根據web.xml配置,請求首先經過actioncontextcleanup過濾器,其為可選過濾器,這個過濾器對於struts2和其他...
struts2原始碼執行流程
先進入核心過濾器,然後判斷該請求是不是由struts2執行的,是的話 1 建立actioncontext 其中其實先建立乙個valuestack,然後從其中拿出context用來建立actioncontext 2 把request包裝成乙個新的request 包裝了getattribute方法,包裝...
struts2執行流程及環境搭建
struts2和struts1一樣,都是應用在web層的框架 不過,它不是基於struts1公升級而來 而是乙個基於webwork的全新框架,webwork框架是繼struts1之後推出的開源框架。struts2和struts1在體系結構上是有很大差別的,struts2中需要使用者實現的元件及元素有...