Struts2工做原理

Struts2請求響應流程:

 

在struts2的應用 中,從用戶請求到服務器返回相應響應給用戶端的過程當中,包含了許多組件如:Controller、ActionProxy、ActionMapping、 Configuration Manager、ActionInvocation、Inerceptor、Action、Result等。下面咱們來具體看看這些組件有什麼聯繫,它們 之間是怎樣在一塊兒工做的。web

 

 

(1)  客戶端(Client)向Action發用一個請求(Request)服務器

(2)  Container經過web.xml映射請求,並得到控制器(Controller)的名字app

(3)  容器(Container)調用控制器(StrutsPrepareAndExecuteFilter或FilterDispatcher)。在 Struts2.1之前調用FilterDispatcher,Struts2.1之後調用StrutsPrepareAndExecuteFilterspa

(4)  控制器(Controller)經過ActionMapper得到Action的信息xml

(5)  控制器(Controller)調用ActionProxyio

(6)  ActionProxy讀取struts.xml文件獲取action和interceptor stack的信息。容器

(7)  ActionProxy把request請求傳遞給ActionInvocationstruts2

(8)  ActionInvocation依次調用action和interceptor配置

(9)  根據action的配置信息,產生resultrequest

(10) Result信息返回給ActionInvocation

(11) 產生一個HttpServletResponse響應

(12) 產生的響應行爲發送給客服端。

相關文章
相關標籤/搜索