一个请求在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。
分享到:
相关推荐
这个压缩包包含了核心库(core)的jar文件和一个实现Struts2工程的步骤文档,这对于初学者或者开发者来说是极其有价值的资源。 1. **Struts2核心库(Core Jars)**: - Struts2的核心库提供了框架的基本功能,包括...
总结来说,将Struts2从2.0.xx或2.3.28.1升级到2.5.12是一个涉及多个步骤的过程,包括备份、下载新版本、更新配置、修改代码以及全面测试。这个过程对于保护你的应用免受潜在威胁至关重要,同时也能享受到新版本带来...
下面将详细阐述创建一个简单的Struts2 HelloWorld程序的步骤: ### Step 1. 创建一个简单的Web应用程序 首先,你需要在IDE(如Eclipse、IntelliJ IDEA等)或通过手动方式创建一个新的Java Web项目。这通常包括以下...
### 二、Struts2工作流程详解 #### 1. 请求初始化 一切始于客户端发起的HTTP请求,该请求通常包含用户提交的数据和请求的资源标识符。请求首先到达Web服务器的Servlet容器,如Apache Tomcat。 #### 2. 过滤器链 ...
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC模式中的视图和控制,Spring提供依赖注入和事务管理,而Hibernate则作为ORM(对象关系映射)工具,负责...
Struts2 项目开发流程包括以下几个步骤: 1. 需求分析:确定项目的需求和功能。 2. 设计:根据需求设计项目的架构和数据库。 3. 实现:使用 Struts2 框架实现项目的功能。 4. 测试:对项目进行测试和调试。 5. 部署...
Struts2 最新漏洞 S2-016、S2-017 修补方案 Struts2 是一个基于 Java 的 Web 应用程序框架,由 Apache 软件基金会维护。最近,Struts2 发生了两个严重的漏洞,分别是 S2-016 和 S2-017,这两个漏洞可能会导致攻击者...
这个“struts2简单例子”是初学者理解Struts2工作原理和核心概念的一个很好的起点。让我们深入探讨一下Struts2的基础知识。 1. **MVC架构**: MVC模式是软件设计中的一个经典模式,它将应用逻辑分为三个主要部分:...
以上就是关于Struts2的一些基础知识点,学习Struts2不仅可以帮助理解MVC模式在实际应用中的工作原理,还能提升Java Web开发的技能。通过观看教学视频,结合实践操作,可以更好地掌握这些概念和技术。
为了使Struts2框架正常工作,你需要引入一系列的JAR文件。这些文件包括: - `commons-logging-1.0.4.jar`:Apache Commons Logging,提供日志服务的抽象层。 - `freemarker-2.3.8.jar`:FreeMarker,一个模板引擎...
Struts2是一个流行的Java web框架,它为开发者提供了一种模型-视图-控制器(MVC)架构,便于创建结构清晰、可维护性高的企业级应用程序。本教程将详细介绍如何部署一个基于Struts2的项目,特别适合初学者。由于实际...
Struts2 验证框架的工作原理可以概括为以下几个步骤: 1. 用户提交请求时,Struts2 框架将用户输入的数据传递给 Validator Framework。 2. Validator Framework 将用户输入的数据与 Validation Rules 进行比较,以...
struts2 的概念和作用 struts2 的HelloWorld 简单分析struts2 的运行流程 struts2 配置文件加载 struts.xml 配置文件详解 struts2 常量文件修改 Action 动作类的三种写法 Action 动作类的三...
### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...
2. **配置 web.xml 文件**:为了使 Struts2 能够在 Web 应用程序中正常工作,我们需要在 `web.xml` 文件中配置过滤器。具体配置如下: ```xml <filter-name>struts2 org.apache.struts2.dispatcher.ng....
Struts2的工作原理深入探讨了其内部机制和核心组件,对于理解框架如何处理请求、路由到相应的Action以及渲染响应至关重要。 首先,Struts2并非Struts1的简单升级,而是融合了WebWork的核心,因此在设计和工作流程上...
10. **类型转换**:Struts2提供了类型转换机制,自动将请求参数转换为Action类的属性类型,简化开发工作。 在使用Struts2全部jar包时,开发者需要将这些库文件加入到项目的类路径中,通常包括Struts2的核心库、依赖...
搭建Struts2的开发环境,我们需要以下步骤: 1. **安装Java环境**:确保系统已安装Java JDK,并设置好环境变量。 2. **集成开发环境(IDE)**:可以选择Eclipse、IntelliJ IDEA等主流的Java IDE,它们都有很好的对...
要使文件上传工作,还需要在 Struts2 的配置文件(通常为 `struts.xml`)中添加对应的 Action 配置,确保 `FileUploadInterceptor` 被应用到这个 Action 上。例如: ```xml <!-- 添加文件上传拦截器 --> ...