引用
Struts2是一个优雅的,可扩展的JAVA EE web框架。框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。Struts2吸收了Struts1和WebWork两者的优势。
Struts2的特性:
l 拥有由积极活跃的开发人员与用户组成的成熟社区
l Annotation和XML配置选项
l 基于POJO并易于测试的Action
l 与Spring,SiteMesh 和Tiles的集成
l 与OGNL表达式语言的集成
l 基于主题的标签库与Ajax标签
l 多种视图选项 (JSP,Freemarker,Velocity和XSLT)
l 使用插件来扩展或修改框架特性。
Struts2的主要jar包
l commons-logging-1.0.4.jar
Struts2框架的日志包
l freemarker-2.3.8.jar
Struts2的UI标签的模版
l ognl-2.6.11.jar
对象图导航语言包
l struts2-core-2.0.11.jar
Struts框架的核心类库
l xwork-2.0.4.jar
XWork类库,Struts2基于此构建
Struts流程
1) 客户端提交一个(HttpServletRequest)请求,如上文在浏览器中输入
http://localhost: 8080/bookcode/ch2/Reg.action就是
提交一个(HttpServletRequest)请求。
2) 请 求被提交到一系列(主要是3层)的过滤器(Filter),如(ActionContextCleanUp、其他过滤器(SiteMesh等)、
FilterDispatcher)。注意:这里是有顺序的,先ActionContext CleanUp,再其他过滤器(Othter Filters、SiteMesh等),
最后到FilterDispatcher。FilterDispatcher是控制器的核心,就是MVC的Struts 2中实现控制层(Controller)的核心。
3) FilterDispatcher询问ActionMapper是否需要调用某个Action来处理这个(HttpServlet Request)请求,如果ActionMapper决定
需要调用某个Action,FilterDispatcher则把请求的处理交给ActionProxy。
4) ActionProxy通过Configuration Manager(struts.xml)询问框架的配置文件,找到需要调用的Action类。例如,用户注册示例将
找到UserReg类。
5) ActionProxy创建一个ActionInvocation实例,同时ActionInvocation通过代理模式调用Action。但在调用之前,ActionInvocation
会根据配置加载Action相关的所有Interceptor(拦截器)。
6) 一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果result。
本文来自CSDN博客,转载请标明出处:
http://blog.csdn.net/xiaoping8411/archive/2009/11/04/4766715.aspx
分享到:
相关推荐
Struts2 漏洞 S2-045 修补方法 Struts2 是一个基于 Java 的 Web 应用程序框架,广泛应用于企业级应用程序中。然而,Struts2 中存在着一些漏洞,例如 S2-045 漏洞,该漏洞可能会导致严重的安全问题。今天,我们将...
一、Struts2标签概述 Struts2标签库是基于JSP标准标签库(JSTL)的扩展,它提供了一系列预定义的标签,用于处理视图层的展示逻辑,如表单处理、数据验证、国际化等。这些标签通常比纯HTML和脚本更易于维护,且与...
Struts2使用过滤器(Filter)作为前端控制器,相比于Struts1使用servlet作为前端控制器更加优雅。 - **适用范围**:Struts2广泛应用于企业级Java Web项目的开发中,特别是那些需要处理大量用户交互和数据展示的应用。 ...
在深入理解`struts2-core-2.3.7`源码之前,我们先概述一下Struts2的基本概念和核心组件。 1. **Action**: Struts2中的Action是业务逻辑处理的核心,它负责接收用户请求,处理数据,并返回结果。每个Action类通常...
Struts2标签概述** Struts2标签库是基于JSP标准标签库(JSTL)的扩展,提供了一系列与Struts2框架紧密集成的标签。这些标签主要用于处理表单、显示数据、控制流程等任务,使开发者能够以声明式的方式编写页面逻辑,...
Struts2使用XML文件进行配置,主要包括struts.xml和struts-default.xml两个主要配置文件。这些配置文件定义了Action的映射关系、拦截器的配置以及常量设置等内容,是整个框架运行的基础。 - **Action配置**:定义了...
struts2的概述struts2下的HelloWord struts2基础 struts2做好准备 struts2的标志 struts2的Action讲解 struts2中的国际化 struts2转化器 struts2实现表单数据校验 struts2的基石-拦截器 struts2中实现IOC struts2中...
5. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,用于在Action和视图之间传递数据。通过OGNL,可以在JSP页面中直接访问Action中的属性,或者在Action中动态设置模型数据。 6. ...
6. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,用于在Action和视图之间传递数据。 7. **Tiles**:Struts2支持Tiles插件,用于创建可重用的页面布局,提高应用的可维护性。...
- **Struts2**: 直接使用Action来处理表单数据,不再需要专门的ActionForm。Action可以是一个普通的Java对象,并且可以通过标签库直接访问其属性。此外,Struts2还支持ModelDriven模式,允许使用模型对象来代替...
#### 一、Struts2原理概述 **1.1 为什么要用Struts2** 在探讨为何使用Struts2之前,我们先简要回顾一下Struts2的一些基本特点: - **模块化设计**:Struts2采用模块化的架构设计,使得各个组件易于替换和扩展。 -...
一、Struts2标签库概述 Struts2的标签库是基于JSP标准标签库(JSTL)的扩展,提供了丰富的标签来处理表单、验证、国际化等功能。这些标签可以与Action、结果类型、OGNL表达式等紧密集成,使得页面的呈现和交互变得...
#### 一、Struts2 概述 Struts2作为一款流行的Web应用框架,是基于MVC(Model-View-Controller)设计模式的增强版本,它继承了Struts1.x的一些特性,并在此基础上进行了大量的改进与优化。Struts2能够很好地解决...
第1章 Struts 2概述,第2章 Struts 2下的HelloWorld,第3章 Struts 2基础,第4章 深入Struts 2,第5章 Struts 2的类型转换,第6章 文件的上传和下载.,第7章 Struts 2的拦截器,第8章 Struts 2的输入校验,9.2 ...
1. **选择合适的解压工具**:使用一款可靠的解压软件,比如7-Zip等,将`struts2-jfreechart-plugin 2.0.11.jar`文件解压成文件夹。这里假设解压后的文件夹名为`struts2-jfreechart-plugin-2.0.11`。 #### 四、修改...
一、Struts2标签库概述 Struts2的标签库是由一系列预定义的JSP标签组成的,这些标签用于处理表单、显示数据、控制流程等任务,减少了开发者编写大量Java脚本和HTML代码的工作量。它们遵循JavaServer Pages (JSP) 2.0...
- **定义**:Struts 2使用XML配置文件来描述应用程序的结构和行为。 - **功能**:配置文件可以指定Action映射、拦截器配置以及其他各种设置,使得应用程序的配置更加灵活。 ### Struts 2的特点 - **易用性**:...
### Struts2框架概述 Struts2是一个开源的、用于开发Java Web应用程序的MVC(Model-View-Controller)框架。它是Struts1的升级版,不仅继承了Struts1的优点,还在其基础上进行了大量的改进和增强。Struts2框架的...
#### Struts2漏洞概述 Struts2框架中存在多种类型的漏洞,其中最常见的是远程代码执行漏洞(RCE)。这类漏洞允许攻击者通过构造特定的HTTP请求来执行任意代码,从而控制服务器或窃取敏感信息。本篇文章将重点介绍一...