Struts2流程
客户端-->一系列过滤器-->ActionMapper-->核心过滤器-->ActionProxy-->ActionInvocation-->拦截器、返回Result-->Template、拦截器-->Response-->客户端
1、客户端(HttpServletRequest)发送请求
2、请求经过过滤器(ActionContextCleanUp-->StrutsPrepareAndExecuteFilter(核心过滤器 )
3、请求到达ActionMapper,通过它来决定调用哪个Action
4、当决定调用某个Action后,请求又会通过核心过滤器,核心过滤器把请求的处理交给ActionProxy
5、ActionProxy通过ConfigurationManager询问配置文件(Struts.xml),找到要调用的Action类。
6、之后ActionProxy创建一个ActionInvocation的反向实例
7、经过拦截器(interceptor), 通过ActionInvocation的实例调用真正的Action
8、Action执行完毕,ActionInvocation创建Result并返回
9、Result经过JSP、拦截器之后,通过HttpServletResponse返回到客户端