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组件再生成动态网页,送回给客户端。
分享到:
相关推荐
4. **AjaxForm的实现**:在Struts2框架中,我们可以使用AjaxForm来实现异步提交表单。首先,需要在JSP页面上使用jQuery选择器和事件监听来捕获表单的提交事件。然后,利用jQuery的`$.ajax()`或`$.post()`方法发起...
在网页开发中,"用form提交打开新页面,类似于支付时候的效果"是一种常见的用户体验设计,特别是在处理支付或重要操作时,以确保用户明确他们的决定并提供一个清晰的反馈流程。以下是一些关于这个主题的关键知识点:...
5. **DispatcherServlet**:Struts1的DispatcherServlet(ActionServlet)是框架的核心,它负责接收请求,解析Action映射,然后调用相应的Action执行业务逻辑。 现在,我们来看一下登录流程: 1. 用户打开登录页面...
在Struts1框架中,页面跳转机制是其核心特性之一,它允许开发者灵活地控制应用程序的流程,实现从一个页面到另一个页面的导航。本文将深入解析Struts1中的五种不同类型的跳转方法,这包括了完整action、仅有Form的...
这些Bean需要在struts-config.xml中声明,以便Struts1可以自动处理表单提交。 5. **创建JSP页面**:视图部分通常由JSP页面组成,它们负责展示数据并提供用户交互。Struts1通过使用JSP标签库(Struts Taglib)简化了...
Struts1是一个基于MVC...这些文件对于理解一个基于Struts1构建的销售系统的架构、数据模型以及交互流程至关重要。通过对这些文件的分析,开发者可以了解到系统的业务逻辑、数据库设计以及视图展示方式等关键信息。
Struts1是一个经典的Java Web开发框架,由Apache软件基金会维护,它主要负责处理MVC(Model-View-Controller)架构中的控制器部分。Struts1标签库是其核心特性之一,它提供了一系列预定义的JSP标签,使得开发者可以...
Struts1是一个经典的Java Web框架,它为开发者提供了一种结构化的MVC(Model-View-...在实际开发中,还可能涉及权限控制、错误处理、国际化等更复杂的功能,但这个简单的实例足以让你了解Struts1的基本工作原理和流程。
假设有一个登录页面logon.jsp,用户提交登录信息后,Struts的工作流程如下: 1. **接收请求**:用户提交登录信息,HTTP请求被ActionServlet捕获。 2. **处理请求**:ActionServlet调用RequestProcessor处理请求。 3...
**第二章:Struts 1.x 工作流程** 1. **用户交互**:用户在Web页面(如/hello.jsp)填写表单,然后提交。 2. **请求处理**:提交的数据以/struts/hello.do的形式发送,Struts框架拦截所有以.do结尾的请求。 3. **...
Struts1是一个经典的Java Web框架,它为开发者提供了一种结构化的MVC(Model-View-Controller)设计模式实现方式,极大地简化了Web应用的开发。在这个“Struts1实现的文件上传”项目中,我们将深入探讨如何在Struts1...
面试中,Struts1的相关问题常常涉及到其核心组件、工作流程以及配置细节。以下是对这些知识点的详细说明: 1. **初始化流程**: 当基于Struts1的Web应用启动时,会加载并初始化`ActionServlet`,它是Struts框架的...
通过这个实例,我们可以理解Struts1的请求处理流程:请求到达ActionServlet -> 解析struts-config.xml -> 创建ActionForm实例 -> 调用Action执行 -> 显示视图。这个流程展示了MVC模式在实际项目中的应用,使开发者能...
总的来说,"Struts1架构登录代码"这个项目展示了如何在Struts1框架下实现一个简单的登录功能,包括ActionForm的使用来封装用户输入,Action类的执行来处理业务逻辑,以及JSP页面作为用户交互的界面。这只是一个基础...
在Struts1的应用中,前端的JavaScript代码通常会与ActionForm配合,将用户填写的数据封装到Form对象中,然后通过Ajax或者传统表单提交方式发送到服务器。 总的来说,"Hibernate+Struts1实现添删改查"是一个基础但...
5. 数据验证:Struts框架根据配置的规则在服务器端自动执行验证。 6. 处理结果:如果验证失败,Struts会将错误信息返回到客户端,用户需修正错误后重新提交;如果验证成功,则继续后续的业务处理。 三、Validator...
在这个"用struts1实现的简单的员工管理系统"中,我们可以深入理解Struts1的核心概念和工作流程,以及如何将它应用于实际的员工管理场景。 首先,Struts1的核心思想是解耦应用程序的业务逻辑、数据模型和用户界面。...
Struts1中的Action类是处理用户请求的中心组件,它实现了业务逻辑并决定后续的处理流程。ActionMapping则定义了Action与URL之间的映射关系,使得用户可以通过不同的URL触发不同的Action。 5. **Tiles框架集成**: ...
对于初学者来说,了解和实践这个Struts1登录页面可以帮助他们掌握基本的Web应用开发流程,理解MVC架构,以及如何使用Struts1框架进行开发。通过这个实例,他们可以学习如何组织代码、处理用户输入、验证数据、展示...