1、 由容器创建HttpServletRequest请求,这个请求经过一系列的过滤器,最终到struts2的核心过滤器(FilterDispatch),
2、 核心过滤器会根据url请求获得Action名称,核心过滤器根据Action名称去询问ActionMapper是否有此Action名称的配置,如果没有,会提示404错误,如果有
3、 核心过滤器会把Action的执行权限给到ActionProxy(Action代理),ActionProxy会去读取ActionConfiguration(Action的配置信息)的信息,ActionProxy会根据配置信息生成ActionInvocation(就是拦截器与Action对象的一个列表)对象,ActionInvocation对象会根据列表中的对象(指的是拦截器和Action的对象),按顺序执行。
4、 ActionInvocation在执行拦截器(执行顺序1、2、3),最后执行Action,Action返回结果逻辑字符串
5、 执行完成Action后,回到拦截器(反方向执行拦截器,执行拦截器的顺序编程了:3、2、1),最终返回界面。