sturts2的工作流程
1).客户端发出一个HttpServletRequest请求,到web服务器的struts框架中,
>首先经过ActionContextCleanUp过滤器,它主要对ActionContext域对象中的内容进行清理,例如:删除某些错误消息集合,
>其次经过其他的一些过滤器因为struts2框架可以和其他web层框架融合在一起工作,此时就得考虑到其他框架的特点.例如:SiteMesh框架它主要对web页面进行布局等等
>最后经过核心过滤器StrutsPrepareAndExecuteFilter
2).创建ActionMapper对象
>>如果有静态资源,例如:HTML,jsp或者是程序员指定的不需要有Struts2框架处理的url路径,直接进行放行,struts2框架不进行处理
>>如果是需要处理的资源,继续交由struts2框架进行处理
3).创建ActionProxy对象
4).创建配置对象 ConfigurationManager,
5).加载src/struts.xml程序员写的配置文件,形成一个ActionMapping对象,该对象存有<action>标签的所有配置信息.
6).创建一个ActionInvocation对象
7).将创建好的ActionInvocation对象,交由struts框架中的默认拦截器栈,依次处理你的ActionInvocation,你可以理解为一个过滤器链.最后通过反射调用程序员自己写的目标对象Action业务方法
8).将Action返回的字符串,与真实的jsp页面对应起来,准备返回.
9).返回时,还要依次经过逆序的过滤器链,整个连接器执行过程中ActionInvocation对象一直存在.
10).如果上述操作都完全正确,web服务器会创建HttpServletResponse对象
响应给客户端浏览器.
下面的图是在网上拔图的,但是编号是自己写的.
相关推荐
**Struts2工作流程详解**: 1. **客户端请求**:用户通过浏览器发起HTTP请求,目标通常是一个Action,如`http://localhost:8080/yourApp/yourAction.action`。 2. **过滤器链**:请求首先经过一系列过滤器,包括`...
虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts 1而言。Struts 2 与Struts 1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度...
在深入探讨Struts2的工作流程之前,我们先了解一下MVC模式的基本概念。MVC模式将应用逻辑分隔为三个部分:模型(Model)处理业务逻辑,视图(View)负责展示数据,控制器(Controller)协调用户输入和模型间的交互。...
这些配置是理解程序工作流程的关键。 3. **Interceptor拦截器**:拦截器允许在Action执行前后插入自定义逻辑,如日志、权限检查等。在项目中,可能会看到如`params`、`validation`、`exception`等内置拦截器的使用...
### 二、Struts2工作流程详解 #### 1. 请求初始化 一切始于客户端发起的HTTP请求,该请求通常包含用户提交的数据和请求的资源标识符。请求首先到达Web服务器的Servlet容器,如Apache Tomcat。 #### 2. 过滤器链 ...
#### Struts2工作流程 1. **用户提交请求**:客户端通过HTTP协议向服务器发送请求。 2. **FilterDispatcher拦截请求**:所有的请求首先被FilterDispatcher捕获。 3. **ActionMapper确定Action**:...
总的来说,Struts2的工作流程大致为:请求到达->过滤器Dispatcher拦截->查找Action映射->创建Action实例->执行拦截器链->调用Action的execute方法->返回Result->渲染视图。这种设计允许开发者将业务逻辑、数据验证、...
首先,Struts2是基于Model-View-Controller (MVC)设计模式的,它简化了从前端到后端的交互流程。在Struts2中,Action类扮演控制器的角色,处理用户的请求,并调用模型层进行业务逻辑处理。同时,Struts2通过配置文件...
struts2工作原理、请求响应流程。。。。。。。。。。。。。。。
这张图是理解Struts2工作流程的重要辅助工具,通过它你可以直观地看到每个组件如何协同工作。 `struts原理.txt`文件可能包含了文字描述,进一步解释了Struts2的核心概念和机制,比如Action的配置、结果映射、拦截器...
通过学习和实践这个Struts2框架程序示例,开发者可以深入理解Struts2的工作原理,掌握如何创建Action、编写Interceptor、配置Action与Result的映射,以及如何利用Struts2的其他特性来提高开发效率和代码质量。...
理解不同的结果类型,如“dispatcher”(用于转发到JSP)和“stream”(用于下载文件),是掌握Struts2工作流程的关键。 4. **拦截器**:Struts2的拦截器机制允许在Action调用前后插入自定义逻辑,如日志、权限检查...
### Struts2的工作流程及配置文件详解 #### 一、Struts2简介 Struts2是基于MVC设计模式的Java Web开发框架之一,它继承了Struts1的优点,并在此基础上进行了大量的改进和扩展。Struts2框架的核心是拦截器...
这个"struts2示例程序"是为了帮助初学者理解并熟悉Struts2框架的基本概念和工作流程。该程序基于Struts2的2.0.14版本,这是Struts2的一个较早版本,但其核心概念和机制在后续版本中仍然适用。 Struts2的核心特性...
Struts2 项目开发 Struts2 是一个基于 Java Web 的框架,广泛应用于 Web ...通过了解 Struts2 框架的应用、开发流程、技术架构、实践经验等方面的知识点,可以更好地应用 Struts2 框架,开发高质量的 Web 应用程序。