Struts1的工作流程(举例struts1执行form提交的流程):
1、ActionServlet是在web.xml中配置的一个自动启动项。当web服务器启动时,也就同时实例化了ActionServlet类,ActionServlet会去初始化struts-config.xml的配置信息,并将其加载到内存中,并会
去实例化action-bean,action-form等对象。
2、当ActionServlet接收到来自客户端的请求时,就会去检索和去请求相匹配ActionMapping实例,如果没有找到则返回500错误.
3、如果找到了就检查对应的ActionForm实例是否存在,
a、如果存在,先把该实例相关数据reset清空一下,然后就把用户提交的表单数据填充到ActionForm实例中.
b、如果不存在,就创建一个ActionForm对象,再把用户提交的表单数据填弃到ActionForm实例中
4、接着,再根据配置,看看是否要对表单进行验证(validate),如果需要验证,则调用ActionForm的validate()方法对表单进行验证.
a、如果验证没通过,则返回错误信息。
b、如果不需要验证,或者需要验证但validate方法返回null或者是返回一个不包含ActionMessage的ActionErrors对象的话,表明验证成功。则继续下一步
5、ActionServlet根据ActionMapping实例所包含的映射信息决定将请求发送给哪个Action,如果对应的Action实例不存在,则创建该Action的实例,然后调用该Action的execute()方法
6、执行完Action实例的execute()方法后,该方法会返回一个ActionForward对象
7、ActionServlet再把客户端发过来的请求,转发给ActionForward对象所指向的JSP组件
8、ActionForward所指向的JSP组件再生成动态网页,送回给客户端。
struts1的几个核心组件是值得我们注意的:
1 、ActionServlet(核心控制器)。
2、RequestProcessor类(处理异常的核心组件)。
3、ActionForm(接收页面中传过的数据)。
4、Action(是控制器,主要是从ActionForm中接收页面传进来的数据,然后进行逻辑
处理)。
5、ActionForward(页面跳转,跳转到jsp组件)。
6、ActionMapping(配置每个Action所对应的映射关系)。
分享到:
相关推荐
本压缩包文件“struts1工作流程.rar”可能包含了一份关于Struts1框架工作流程的详细文档“struts1工作流程.doc”。下面将详细介绍Struts1的工作流程及其相关知识点。 1. **MVC架构**: Struts1基于MVC设计模式,...
虽然Struts2号称是一个全新的框架,但这仅仅是相对Struts 1而言。Struts 2 与Struts 1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度...
### Struts1的工作流程详解 #### 一、概述 Struts1是Apache Struts的第一个版本,它是基于Java Servlet/JavaServer Pages技术构建的MVC框架。对于初学者来说,了解Struts1的工作流程是非常重要的,这有助于理解...
#### Struts1工作流程 1. **用户提交请求**:客户端向服务器发送HTTP请求。 2. **ActionServlet接收请求**:ActionServlet接收到请求后,根据`struts-config.xml`文件中的配置决定调用哪个Action来处理请求。 3...
在深入探讨Struts2的工作流程之前,我们先了解一下MVC模式的基本概念。MVC模式将应用逻辑分隔为三个部分:模型(Model)处理业务逻辑,视图(View)负责展示数据,控制器(Controller)协调用户输入和模型间的交互。...
在深入理解Struts2的工作流程之前,我们需要先了解一些基本概念。 1. **MVC模式**: MVC模式将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。模型负责业务逻辑,视图负责显示...
Struts1 的工作流程可以分为以下七步: 1. 检索和用户请求匹配的 ActionMapping 实例,如果不存在就返回请求路径无效信息。 2. 如果 ActionForm 实例不存在,就创建一个 ActionForm 对象,并把客户提交的表单数据...
#### 三、Struts1 工作流程 **3.1 Struts-config.xml 配置** - `<form-bean>`:定义ActionForm。 - `name`:ActionForm的名称。 - `type`:ActionForm对应的类路径。 - `<action>`:配置Action。 - `attribute`...
本文将通过使用Servlet来模拟Struts1的工作流程,深入理解其核心机制。 首先,让我们探讨Struts1的基本架构。Struts1框架的核心组件包括ActionServlet、ActionForm、Action、Tiles以及配置文件(struts-config.xml...
这是一个详细的Struts工作流程图,里面包含JSP、java(Action、ActionForm等)类
在上述的描述中,我们了解了Struts工作流程的关键步骤: 1. **客户端请求**:当用户在浏览器中输入一个以`.do`结尾的URL(例如http://localhost:8080/helloapp/Hello.do)时,这个请求会被Web服务器捕获并传递给...
这些配置是理解程序工作流程的关键。 3. **Interceptor拦截器**:拦截器允许在Action执行前后插入自定义逻辑,如日志、权限检查等。在项目中,可能会看到如`params`、`validation`、`exception`等内置拦截器的使用...
以下是Struts工作流程的详细说明: 1. **模型(Model)**: 模型层主要负责应用程序的状态管理和业务逻辑处理。在Struts框架中,模型通常由JavaBean或Enterprise JavaBeans(EJB)来实现。JavaBean是简单的Java类...
理解Struts1的核心组件和工作原理对于任何Java Web开发者来说都是至关重要的,这有助于他们构建稳定、可扩展的应用程序。虽然Struts1已经被更现代的框架如Spring MVC取代,但其设计理念和MVC模式依然在现代Web开发中...
Struts 2是一个强大的MVC(Model-View-Controller)框架,它是在WebWork的基础上发展起来的,旨在提供更高效、更灵活的Web应用程序开发。Struts 2整合Struts 1,允许开发者利用Struts 1已有的投资,同时享受Struts 2...
Struts1是一个经典的Java Web开发框架,它引入了模型-视图-控制器(MVC)设计模式,使得...通过这个简单的Hello World示例,开发者可以快速上手,了解Struts1的架构和Maven的工作流程,为进一步学习和实践提供基础。
本教程将帮助初学者深入理解Struts1的核心概念、工作原理以及如何使用它来构建动态Web应用程序。 **1. MVC模式** 在深入Struts1之前,首先理解MVC模式至关重要。MVC是一种设计模式,用于将业务逻辑、数据和用户界面...
**Struts1工作流程:** 1. 用户发送HTTP请求到服务器。 2. ActionServlet捕获请求,根据struts-config.xml中的配置找到对应的ActionMapping。 3. 如果有ActionForm,ActionServlet会将请求参数填充到ActionForm对象...
通过这个"struts1完整demo",开发者可以了解并实践Struts1的完整工作流程,包括配置、控制器、模型、视图的构建,以及错误处理和国际化等高级特性。这对于理解MVC架构和Java Web开发有着重要的价值,尽管现代Web开发...