Struts2是 Apache Struts的下一代产品, 它与WebWork项目进行合并, 并以XWork和WebWork代码作为Struts2的基础.
Struts2 包含以下核心内容: Actions, Interceptors, Results, Validation, OGNL, Tags, View Template, JSP, FreeMarker, Velocity, Plugin.
可以说 Struts2 是Java Web 开发的事实标准, 它具备以下能力:
- 基于 Action的框架, 基于成熟的 XWork框架;
- 拥有由积极活跃的开发人员与用户组成的成熟社区;
- Annotation和XML配置选项;
- 基于 POJO并易于测试的 Action;
- 与 Spring, SiteMesh 和 Tiles的集成;
- 与 OGNL表达式语言的集成;
- 基于主题的标签库与 Ajax标签;
- 多种视图选项 (JSP , Velocity, Freemarker和 XSLT);
- 使用插件来扩展或修改框架特性.
Struts2 用户请求的处理流程:
- User Sends request;
- FilterDispatcher determines the appropriate action;
- Interceptors are applied, 完成 validation, file upload等功能;
- Execution of Action;
- Output rendering;
- Return of Request;
- Display the result to user.

Struts 2 整体架构图:

更多Struts 2 的信息请访问: http://docs.huihoo.com/apache/struts/