java之路—— 带你了解Struts与其基本的应用

13 篇文章 0 订阅

在这里插入图片描述

创作不易,各位亲给个免费的呗


前言

Struts是在2000年由Apache软件基金会首次发布的,自那时以来,它在Java Web开发中扮演着重要的角色,并经历了许多值得注意的发展阶段。

Struts 1.x:Struts的最初版本是Struts 1.x系列,它引入了MVC架构模式,提供了基本的控制器(Action)和视图(JSP)的分离。Struts 1.x以其可靠性和易用性受到了广泛的关注和应用。

Struts 2.x:随着时间的推移,Struts 2.x取代了Struts 1.x成为新一代的Struts框架。Struts 2.x在架构上进行了重大改进,采用了更灵活、更面向对象的设计理念。它引入了拦截器、标签库和注解等新特性,使得开发更加高效和舒适。

Struts对Web开发的影响:Struts的出现对Java Web开发产生了重要的影响。它提供了一种组织和管理Web应用程序的模式,帮助开发者更好地处理请求、处理业务逻辑和渲染用户界面。Struts架构在很多Web应用程序中得到了广泛的应用。

社区和生态系统:Struts在其发展过程中建立了一个活跃的开发者社区和生态系统。这个社区不断为Struts贡献新特性、修复bug和提供支持。此外,还有许多第三方库和工具与Struts集成,为开发者提供了更多的选择和扩展性。

虽然如今有一些新的框架如Spring MVC、Spring Boot等的出现,但Struts作为一个经过时间考验的框架仍然存在,并继续为许多企业和开发者所使用。无论是通过Struts 1.x还是Struts 2.x,它们都为Java Web开发提供了强大的支持和灵活的架构。不断的改进和持续的社区贡献使得Struts能够适应新的技术需求和潮流,为开发者创造更好的开发体验。

一、什么是Struts,可以用来干嘛

Struts是一个用于开发Java Web应用程序的开源框架。它提供了一个MVC(Model-View-Controller)的架构,帮助开发者更好地组织和管理web应用程序的代码。

1. MVC架构:Struts采用MVC架构模式来分离应用程序的不同层次。Model层负责处理数据逻辑,View层负责渲染用户界面,而Controller层负责处理用户请求并调度相应的业务逻辑。

2. 核心组件:Struts的核心组件包括Action、Interceptor、Validator等。Action负责接收并处理用户请求,Interceptor用于实现请求处理拦截和前后处理,Validator用于验证用户输入。

3. 配置文件:Struts使用XML文件来配置应用程序的行为。其中,struts.xml文件是主要配置文件,定义了Action映射、拦截器栈、全局结果等。通过配置文件,开发者可以灵活地管理和配置应用程序的行为。

4. 表单处理:Struts提供了方便的表单处理机制。开发者可以通过在Action中定义表单类,自动将用户请求的参数绑定到表单对象中。同时,还可以使用Struts提供的表单标签库来生成表单、处理表单验证等。

5. 标签库支持:Struts提供了丰富的标签库,用于生成HTML元素和控件。这些标签库简化了开发者对用户界面的开发,提高了开发的效率。开发者可以使用这些标签库来生成表单、按钮、下拉框等用户界面元素。

6. 国际化支持:Struts提供了强大的国际化支持,使得开发者能够轻松地实现应用程序的多语言支持。通过使用资源束和国际化相关的标签,开发者可以方便地在应用程序中实现多语言切换。

总的来说,Struts是一个功能丰富且成熟的Java Web开发框架,它提供了许多有用的特性和工具,帮助开发者快速构建可靠、可维护的Web应用程序。无论是初学者还是有经验的开发者,使用Struts都能够更加高效地开发出优秀的Web应用程序。

二、Struts 与 springmvc

Struts和Spring MVC都是用于开发Java Web应用程序的框架,它们都基于MVC架构模式,但在一些方面有一些不同之处。下面我们来比较一下Struts和Spring MVC

1. 学习曲线:相对而言,Struts具有较陡峭的学习曲线。由于它的配置文件较多,需要了解和掌握更多的概念和规则。而Spring MVC则相对简单、灵活,易于学习和使用。

2. 配置方式:Struts使用XML配置(比如struts.xml)来定义Action映射、拦截器栈等,而Spring MVC使用注解(比如@Controller、@RequestMapping)和Java配置来实现,减少了对XML配置文件的依赖。

3. 轻量级与重量级:相对而言,Spring MVC是更轻量级的框架,它的设计更灵活,可以根据需求定制。而Struts则是一个相对重量级的框架,拥有更多的特性和功能,但在某些情况下可能会显得复杂。

4. 集成能力:Spring MVC与Spring框架天然集成,可以很好地利用Spring提供的依赖注入和面向切面编程等功能。而在Struts中,如果需要使用Spring的依赖注入等特性,需要通过一些技术手段来实现集成。

5. 社区和生态系统:Spring MVC拥有更大规模的社区和更丰富的生态系统,有更多的文档、教程和第三方库可供参考和使用。Struts虽然曾经非常流行,但相对来说其社区规模和生态系统相对较小。


其实两个框架各有优势,选择哪个框架取决于具体需求和个人偏好。
如果你更喜欢轻量级、灵活的框架,对Spring框架有一定了解,可以选择Spring MVC。
如果你需要一个功能丰富、成熟的框架,对XML配置和Struts的规则和设定感到舒适,可以选择Struts。
不管你选择哪个框架,都可以使用它们来构建高效、可维护的Java Web应用程序。

三、Struts的开发的基本步骤

好的,以下是使用Struts进行开发的简要代码示例,展示了开发步骤的具体实现:

  1. 确定需求:
// 根据应用程序需求,明确功能和用户交互方式的具体实现细节
  1. 搭建环境:
// 确保你的开发环境已经配置好JDK、Tomcat和开发工具(如Eclipse)
  1. 创建项目:
// 创建一个新的Java Web工程,根据你的开发工具和项目需求进行具体操作
  1. 配置框架:
  • 在项目的lib目录中添加Struts框架的相关依赖库。
  • 在web.xml文件中添加Struts的过滤器和监听器配置。

示例代码如下:

<!-- 配置Struts2过滤器 -->
<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<!-- 配置Struts2监听器 -->
<listener>
    <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class>
</listener>
  1. 创建Action类:
// 创建一个Action类,用于处理来自用户的请求

// 导入Struts2相关的类
import com.opensymphony.xwork2.ActionSupport;

// 创建一个继承自ActionSupport的Action类
public class MyAction extends ActionSupport {
    // 添加所需的属性和方法,用于处理请求和展示数据
    // ...
}

根据具体的需求,你还可以继续编写业务逻辑和视图层的代码,以完成一个完整的Struts应用程序。

四、Struts的处理流程

Struts框架的处理流程可以概括为以下几个步骤:
在这里插入图片描述

1. 请求拦截:
当用户在浏览器中发起一个请求时,请求会被应用服务器拦截。Struts使用web.xml中配置的过滤器来接收请求。

2. Action类的调度:
拦截器将请求转发给相应的Action类。在Struts框架中,Action类是处理请求的核心组件。根据配置文件中的映射关系,框架会找到匹配的Action类来处理请求。

3. Action类处理请求:
Action类是应用程序中的控制器部分,它负责处理请求并生成响应。在Action类中,开发人员可以根据业务逻辑处理请求参数、调用服务层方法、设置返回结果等。

4. 拦截器的应用:
在处理请求的过程中,Struts框架通过配置的拦截器来执行一系列定义好的操作。拦截器可以在请求到达Action类之前或之后执行特定的逻辑,例如身份验证、日志记录、异常处理等。拦截器的执行顺序可以通过配置文件进行控制。

5. 视图解析与渲染:
在Action类中,开发人员根据业务逻辑设置结果视图的名称。Struts框架根据配置文件中的视图映射,将结果视图解析成实际的页面,并将其进行渲染。渲染后的页面会作为响应返回给浏览器。

6. 响应返回到浏览器:
最后,生成的响应会被Struts框架发送回浏览器展示给用户。用户可以在浏览器中看到请求的结果。

这个流程保证了代码的模块化和可维护性,使开发人员能够更加专注于业务逻辑的实现。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Struts2框架是一个用于开发Web应用程序的Java框架,它基于MVC设计模式,并提供了一套丰富的标签库和插件,能够简化Web应用程序的开发过程。 Struts2框架的基本流程如下: 1. 环境准备:首先需要在开发环境中配置好Java开发工具(如Eclipse、IntelliJ IDEA等)、Tomcat服务器和Struts2框架的相关jar包。 2. 创建项目:在开发工具中创建一个新的Web项目,并将Struts2框架的相关jar包引入到项目中。 3. 配置web.xml:在web.xml文件中配置Struts2框架的过滤器,以便让其能够拦截并处理所有的请求。 4. 创建Action类:编写Action类,它将负责处理Web应用程序中的各种请求,并将处理结果返回给用户。 5. 创建视图:编写JSP页面或FreeMarker模板,用于显示页面内容并接收用户的输入。 6. 配置struts.xml:在struts.xml文件中配置Action类的映射关系,将URL与相应的Action类方法进行映射。 7. 编写业务逻辑:在Action类中编写业务逻辑,可以调用服务层或数据库访问层的方法来实现具体的功能。 8. 联合视图:将Action类处理的结果通过视图呈现给用户,可以使用标签库和插件来达到更好的效果。 9. 测试和调试:在本地服务器上运行Web应用程序,进行测试和调试,确保各个模块都能够正常运行。 10. 部署上线:将Web应用程序部署到生产环境的服务器上,以便用户可以访问和使用。 总的来说,Struts2框架的开发流程就是配置环境、创建项目、编写Action类和视图、配置映射关系、编写业务逻辑、联合视图、测试调试和部署上线这几个步骤。通过这些步骤,我们可以快速高效地开发出一个功能完善、性能稳定的Web应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流光CN

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值