Struts2的工作流程

来源:互联网 发布:阿里云没404 编辑:程序博客网 时间:2024/05/06 14:34


  



这个图几乎每本书里面都有,我们应该能够做到能够自己把这张图画出来,然后根据自己的画图的过程叙述其工作的流程。

struts2的工作流程如下:

1、客户端向web容器(如tomcat)发送一个请求。

2、请求经过一系列的过滤器过滤并传递给FilterDispatcher(控制器的核心,是一个servlet过滤器)。

3、FilterDispathcher询问ActionMapper是否需要调用某个Action来处理这个请求,如果需要调用,FilterDispatcher则会把请求的处理交给ActionProxy。

4、ActionProxy通过Configuration Manager(struts.xml)询问框架的配置文件,找到需要调用的Action类。

5、ActionProxy创建一个ActionInvocation的实例,同时ActionInvocation通过代理模式调用action。但是在调用之前或之后,ActionInvocation会根据配置加载相关的拦截器。

6、Action执行完毕后,ActionInvocation负责根据struts.xml的配置找到逻辑视图,由逻辑视图得到物理视图,并把物理视图返还给客户端。