Struts2 工作原理
来源:互联网 发布:对网络搜索的理解 编辑:程序博客网 时间:2024/06/04 18:37
一个请求在Struts2框架中的处理大概分为以下几个步骤
1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求
2 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin)
3 接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action
4 如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy
5 ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类
6 ActionProxy创建一个ActionInvocation的实例。
7 ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。
8 一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总是,也可 能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper
1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求
2 这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin)
3 接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action
4 如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy
5 ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类
6 ActionProxy创建一个ActionInvocation的实例。
7 ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。
8 一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总是,也可 能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper
在上述过程中所有的对象(Action,Results,Interceptors,等)都是通过ObjectFactory来创建的。
一个请求在Struts2框架中的处理大概分为以下几个步骤:
客户端提起一个(HttpServletRequest)请求,如上文在浏览器中输入”http://localhost:8080/TestMvc/add.action”就是提起一个(HttpServletRequest)请求。
请求被提交到一系列(主要是三层)的过滤器(Filter),如(ActionContextCleanUp、其他过滤器(SiteMesh等)、 FilterDispatcher)。注意这里是有顺序的,先ActionContextCleanUp,再其他过滤器(SiteMesh等)、最后到FilterDispatcher。
客户端发送一个请求-------->Servlet Filer Dispatcher------------>拦截器1----------->拦截器2----------->拦截器N--------------->找到相应的Action-------根据相应的struts.xml配置找到返回结果---------->Result
- Struts2-04-struts2工作原理
- struts2工作原理 工作流程
- Struts2的工作原理
- Struts2的工作原理
- Struts2 工作原理
- struts2核心工作原理
- Struts2的工作原理
- Struts2工作原理
- Struts2的工作原理
- struts2的工作原理
- struts2工作原理
- Struts2的工作原理
- Struts2工作原理
- Struts2的工作原理
- struts2的工作原理
- struts2的工作原理
- struts2工作原理
- Struts2的工作原理
- 第五次C程序上机报告
- Android:New Look, New Purchase Flow in Google Play
- Begining
- 职场精英的成长模型
- jcsu博客
- Struts2 工作原理
- 协同工作流在湖北交通厅的应用
- linux中NFS共享配置
- KMP字符串模式匹配详解
- 第五次上机实验
- 我的许愿树
- C#重载操作符==和!=时注意问题
- temp
- Assigned 用法