Struts2_请求执行流程
来源:互联网 发布:mac上的txt阅读器 编辑:程序博客网 时间:2024/06/05 19:10
你所有的成功,都是来自你的努力,而你的努力,就是让自己变得值钱起来。—-我们共勉
一个请求在Struts2框架中的处理步骤:
①客户端初始化一个指向Servlet容器的请求;
②根据Web.xml配置,请求首先经过ActionContextCleanUp过滤器,其为可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助(SiteMesh Plugin),主要清理当前线程的ActionContext和Dispatcher;
③请求经过插件过滤器,如:SiteMesh、etc等过滤器;
④请求经过核心过滤器FilterDispatcher,执行doFilter方法,在该方法中,询问ActionMapper来决定这个请求是否需要调用某个Action;
⑤如果ActionMapper决定需要调用某个Action,则ActionMapper会返回一个ActionMapping实例(存储Action的配置信息),并创建ActionProxy(Action代理)对象,将请求交给代理对象继续处理;
⑥如果ActionMapper决定需要调用某个Action,则ActionMapper会返回一个ActionMapping实例(存储Action的配置信息),并创建ActionProxy(Action代理)对象,将请求交给代理对象继续处理;
⑦ActionProxy对象根据ActionMapping和Configuration Manager询问框架的配置文件,找到需要调用的Action类;
⑧ActionProxy对象创建时,会同时创建一个ActionInvocation的实例;
⑨ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用;
10).一旦Action执行完毕,ActionInvocation实例负责根据struts.xml中的配置创建并返回Result。Result通常是一个需要被表示的JSP或者FreeMarker的模版,也可能是另外的一个Action链;
11).如果要在返回Result之前做些什么,可以实现PreResultListener接口,PreResultListener可以在Interceptor中实现,也可以在Action中实现;
12).根据Result对象信息,生成用户响应信息response,在生成响应过程中可以使用Struts2 框架中继承的标签,在此过程中仍会再次涉及到ActionMapper;
- Struts2_请求执行流程
- Struts2_请求参数接收
- Struts2_接收请求参数
- Spring MVC请求执行流程
- struts2_请求路径_namespace_result测试
- Struts2_请求参数接收2
- Struts2_输入校验的流程
- 22.struts2_运行流程分析
- 34.Struts2_运行流程分析
- Liberty nova-api HTTP请求执行流程
- OkHttp3 HTTP请求执行流程分析
- Struts2学习二、一个请求的执行流程
- Volley源码(2):执行网络请求的流程
- grpc的invoke(一次请求)正常执行流程
- Struts2_指定Struts2处理的请求后缀、常用常量
- struts2_请求参数_手动校验(代码校验)
- struts2_请求参数_配置校验(XML配置)
- 14.struts2_框架流程分析,以及Params拦截器
- Charles学习笔记(1)——Charles安装与配置
- Rotate Array
- rsyslog v8安装、配置
- 2017年中总结-小海
- linux服务器上安装github服务
- Struts2_请求执行流程
- Windows下安装vue.js
- 你不知道的水浒好汉,在这里!
- 据说用空格键比用Tab键的程序员挣得多?!
- Java I/O解读与使用实例
- 重启nginx
- oninput,onpropertychange,onchange的区别和用法
- 插件化-360的DroidPlugin与RePlugin研究及集成
- Centos 64位 安装git服务