(Struts)ActionForm类及表单数据验证

Apache Struts,廉颇老矣,尚能饭否?

Apache Struts 是一个开源的 Java Web 应用程序框架,它使用 MVC(Model-View-Controller)设计模式来支持Web应用程序的开发。它提供了一个易于使用的开发框架,使开发人员可以将业务逻辑和界面逻辑分离,并使用标准的Java技术来创建动态Web应用程序。

简介

Struts 框架中的核心组件包括 Action、ActionForm、ActionMapping 和 ActionServlet 等。Action 是处理 Web 请求的核心组件,ActionForm 用于收集和验证表单数据,ActionMapping用于将请求映射到正确的Action,而ActionServlet则充当整个框架的控制器。

Apache Struts 曾是许多大型 Web 应用程序的选择框架,包括许多著名的电子商务网站和企业级应用程序。

Struts 是基于拦截器实现的,它基于 MVC 设计模式的。在Struts中,控制器由ActionServlet实现,它接收所有的HTTP请求,并根据配置文件将请求转发给相应的Action。Action是实现业务逻辑的组件,它接收请求并生成响应。

总体来说,Struts 使用 ActionServlet 作为中心控制器,通过配置文件将请求映射到正确的 Action,并使用 ActionForm 来收集和验证表单数据。通过这种方式,Struts 实现了一种灵活的 Web 应用程序开发框架,使开发人员可以将业务逻辑和界面逻辑分离,并且使得开发工作更容易组织和维护。

现状

Struts 曾经是Java Web应用程序框架中的主流之一,然而近年来随着新的框架的不断涌现,Struts 的市场占有率有所下降。不过,由于 Struts 在早期的 Java Web 应用程序开发中的广泛使用,许多企业级应用程序仍然在使用 Struts。

根据一些市场研究公司的调查数据显示,Struts 在 Java Web 应用程序框架中的市场占有率已经逐渐下降,但仍然保持着一定的份额。例如,根据开发者社区的调查显示,截至年,Struts 的市场份额约为%,排名第位。

尽管 Struts 在市场占有率上已经不如以前,但它仍然是一种非常成熟和可靠的Java Web应用程序框架,为许多企业级应用程序提供了良好的支持。

竞争对手

Struts 的竞争对手包括了很多其他的 Java Web 应用程序框架,其中一些最流行的框架如下:

  • Spring MVC:Spring MVC 是一个基于 MVC 设计模式的 Java Web 应用程序框架,它提供了比Struts更加灵活的开发环境,包括依赖注入、面向切面编程等功能。
  • Play Framework:Play Framework 是一个基于 Java 和 Scala 的现代 Web 应用程序框架,它提供了高度的可扩展性和可维护性,同时也具有响应快速的开发特性。
  • JavaServer Faces (JSF):JSF 是一个 Java 企业版(JavaEE)规范,它提供了一种简单的编程模型,用于构建基于组件的用户界面。与 Struts 相比,JSF 具有更加强大和易于使用的组件模型。
  • Spark Framework:Spark Framework 是一个轻量级的 Java Web 应用程序框架,它使用简单的 DSL 语法来定义 Web 应用程序路由和处理程序。
  • Dropwizard:Dropwizard 是一个用于构建 RESTful Web 服务的 Java 框架,它集成了 Jetty、Jersey、Jackson 等库,提供了一种简单的方式来构建现代化的 Web 服务。

小结

尽管 Struts 在市场占有率上已经不如以前,但它仍然是一种非常成熟和可靠的 Java Web 应用程序框架,为许多企业级应用程序提供了良好的支持。同时,许多开发人员也对Struts有着深厚的技术积累和经验,这也是 Struts 在某些场景下仍然具有优势的原因之一。

但是目前市场上基本是 Spring Boot 框架占据了非常大的份额,我们没有必要专门再学习 Struts,可以看看它的实现,学习下它的设计,而非使用它。

原文链接:,转发请注明来源!