struts2执行流程


 

当Web容器收到 请求(HttpServletRequest)

1、它将请求传递给一个标准的的过滤链包括 (ActionContextCleanUp)过滤器

2、然后经过Other filters(SiteMesh ,etc),

3、接下来需要调用FilterDispatcher核心控制器,

4、然后它调用ActionMapper确定请求那个Action,

ActionMapper返回一个收集Action详细信息的ActionMaping对象。

5、接下来FilterDispatcher将控制权委派给ActionProxy,

6、ActionProxy调用配置管理器(ConfigurationManager) 从配置文件中读取配置信息(struts.xml),

7、然后创建ActionInvocation对象

8、ActionInvocation在调用Action之前会依次的调用所用配置拦截器(Interceptor N)

9、一旦执行结果返回结果字符串,ActionInvocation负责查找结果字符串对应的(Result)

10、然后执行这个Result ,Result会调用一些模版(JSP)来呈现页面

11、之后拦截器(Interceptor N)会在被执行(顺序和Action执行之前相反)最后响应(HttpServletResponse)被返回在web.xml中配置的那些过滤器和(核心控制器)(FilterDispatcher)。

posted @ 2017-01-05 10:16  小明子  阅读(132)  评论(0编辑  收藏  举报