Struts2是什么?它和Struts1有什么区别?

Struts2 是 Apache 软件组织推出的一个基于 MVC 模式的轻量级 Web 框架,自问世以来,就受到了广大 Web 开发者的欢迎。目前,Struts2 在 Java Web 开发领域中已占据了十分重要的地位。

目前为止,Struts 框架拥有两个主要版本:Struts1.x 和 Struts2.x。Struts1 是最早的基于 MVC 模式的轻量级 Web 框架,它能够合理划分代码结构,并包含验证框架、国际化框架等多种实用工具框架。

随着技术的不断进步,Struts1 的局限性也越来越多地暴露出来。为了符合更加灵活、高效的开发需求,Struts2 框架应运而生,并在逐渐取代 Struts1 框架。

Struts2 是在 Struts1 和 WebWork 技术(WebWork 是由 OpenSymphony 组织开发的、致力于组件化和代码重用的 J2EE Web 框架,它也是一个 MVC 框架)的基础上进行合并后的全新框架。

虽然 Struts2 的名字与 Struts1 相似,但其设计思想有很大不同,因为 Struts2 是以 WebWork 为核心的,它是 WebWork 技术与 Struts1 技术的结合,所以 Struts2 可以理解为 WebWork 的更新产品。

Struts2 拥有优良的设计和功能,其优势具体如下。
  • 项目开源,使用及拓展方便。
  • 通过简单、集中的配置调度业务类,使配置和修改都非常容易。
  • 提供简单、统一的表达式语言访问所有可供访问的数据。
  • 提供标准、强大的验证框架和国际化框架。
  • 提供强大、可以有效减少页面代码的标签。
  • 提供 Exception 处理机制,并且具有良好的 Ajax 支持。
  • Result 方式的页面导航,通过 Result 标签很方便地实现重定向和页面跳转。
  • 拥有智能的默认设置,不需要另外进行繁琐的设置。使用默认设置就可以完成大多数项目程序开发所需要的功能。

上面列举的就是 Struts2 框架的一系列技术优势,读者只需了解即可,在后面的学习中,读者会慢慢对这些技术优势有更深刻的理解和体会。