假设现在在有以下情景:用户正在浏览一个用STRUTS的技术构建的网站主页,
主页上有个登陆表单,用户填好登陆名和密码,单击“登陆”按钮,就激活了以下一系列过程:
(1)用户的请求以HTTP方式传输到服务器上,接受请求的是ActionServlet.
(2)ActionServlet接收到请求后,会查找Struts-config.xml文件来确定服务器上是否有用户请求的操作,
此处用户请求操作应为登陆操作。
如果没有,则返回一个用户请求无效的出错信息。
(3)当ActionServlet请求找到用户请求的Action后,首先将用户输入的表单参数打包成一个ActionFrom对象
,这个ActionFrom对象其实也就是一个JavaBean,里面包含两个字段,分别是用户名和密码。
接着ActionServlet再根据struts-config.xml中的配置信息决定是否要执行ActionFrom对象中的Validate方法。
若Validate方法执行有错,则返回。否则,继续下一步。
(4)系统生成一个用户所请求的Action的实例对象,将前面的ActionFrom对象传递给它,运行它的Execute()方法。
这一步其实就是用户登陆的控制器,
在执行exectue()方法时,可以调用后台模型验证登陆名和密码是否正确等信息。
(5)execute()执行结束前会生成以和ActionForward类型的对象并将之返回给ActionServlet,
该对象的作用是告诉ActionFroward就代表跳转到一个登陆成功的页面。ActionServlet将对之进行分析,
其实就相当于接收到一个新的请求,重复(2)~(5)的过程,直到将某个界面返会给用户为止!
以上就是STRUTS的基本工作流程。
分享到:
相关推荐
以下是Struts工作流程的详细说明: 1. **模型(Model)**: 模型层主要负责应用程序的状态管理和业务逻辑处理。在Struts框架中,模型通常由JavaBean或Enterprise JavaBeans(EJB)来实现。JavaBean是简单的Java类...
### Struts工作流程 1. **初始化阶段**: Web应用启动时,容器加载struts相关的jar包,并在web.xml中配置ActionServlet,使其监听特定的URL模式。 2. **请求接收**: 客户端通过HTTP请求访问应用,如`Login.do`。这...
本讲重点在于理解Struts的工作流程以及如何在MyEclipse环境下进行Struts开发。 首先,我们回顾一下相关知识。JavaEE是企业级Java应用的标准,SSH(Struts、Spring、Hibernate)是其中常见的三大框架组合。Struts...
2. **解析配置信息**:在web应用启动时,`ActionServlet`会读取`struts-config.xml`配置文件。此文件定义了Action和用户请求之间的映射关系,以及其他配置信息。每个`<action>`元素对应一个`ActionMapping`对象,...
**Struts 1.2 工作流程** 1. **用户请求**: 用户通过浏览器发送HTTP请求到服务器。 2. **DispatcherServlet(ActionServlet)**: Struts的前端控制器接收请求,并进行初步处理。 3. **配置映射**: 请求URL被映射到...
下面我们将详细解释Struts1的工作流程和核心组件。 首先,Struts1的体系结构由以下几个关键部分组成: 1. **ActionServlet**:这是核心控制器,作为Servlet在`web.xml`中配置,负责接收HTTP请求,并根据`struts-...
- 当ActionServlet启动时,它会加载`struts-config.xml`文件中的配置信息到内存,用于后续请求的匹配和处理。 - 当ActionServlet接收到HTTP请求,它会在`doGet()`或`doPost()`方法中调用`process()`方法,接着由...
应用启动时,Struts1的配置文件(如struts-config.xml)会被加载,定义了Action类、ActionForm、-forward等元素。这些配置是Struts1框架运行的基础。 3. **请求处理**: - 用户通过浏览器发送HTTP请求到服务器。 ...
尽管它们都是Struts家族的一部分,但它们的工作原理和流程有着显著的区别。 **Struts1工作原理及流程** 1. **体系结构**:在Struts1中,核心控制器是`ActionServlet`,它负责处理HTTP请求,并根据`struts-config....
这个过滤器是Struts2的核心组件,负责启动整个处理流程。 3. **ActionContext初始化**:每个请求都会创建一个`ActionContext`对象,它存储了与当前请求相关的上下文信息,包括参数、值栈、本地化信息等。 4. **...
在Web应用启动时,Struts框架的初始化阶段就开始了。首先,ActionServlet被加载,这是一个关键组件,它负责处理所有的HTTP请求。ActionServlet会读取项目中的`struts-config.xml`配置文件,这是Struts框架的配置中心...
下面我们将详细探讨Struts 1.2的控制流程。 **一、用户请求** 当用户在浏览器中输入URL并点击提交时,这个HTTP请求会被发送到Web服务器。如果URL指向的是Struts应用,那么Struts框架会接手处理这个请求。 **二、...
首先,我们需要了解Struts2框架的核心组件和工作流程。Struts2框架通过Action类处理用户请求,这些Action类是业务逻辑的载体。当用户发送HTTP请求时,Struts2的Front Controller(核心控制器)StrutsActionServlet...
以下是Struts1.2的基本控制流程,适合初学者理解和面试准备。 首先,ActionServlet是Struts1.2中的核心组件,它扮演着前端控制器的角色。当应用程序启动时,由于在web.xml配置文件中设置了`<load-on-startup>0...
当Web应用启动时,Struts框架读取`struts-config.xml`配置文件来初始化框架。这个配置文件包含了应用的各种设置,包括ActionMapping、FormBeans和Forward定义等,用于指导Struts如何处理不同的请求。 #### 2. 接收...
在Struts2应用启动时,Web容器首先读取`web.xml`部署描述符。在这个文件中,`FilterDispatcher`被定义为一个Servlet Filter,它负责拦截所有到达应用的HTTP请求。 2. **FilterDispatcher**: - `FilterDispatcher...
在Web应用启动时,Struts框架中的核心组件——ActionServlet会被加载并初始化。ActionServlet的主要职责是在运行时解析和处理用户请求,它从`struts-config.xml`配置文件中读取一系列的配置信息,并将其存储到不同的...
Struts-config详解 Struts-config.xml 是Struts框架...在struts应用程序中,struts-config.xml文件扮演着核心角色,它控制着struts应用程序的流程和逻辑。因此,了解struts-config.xml文件的配置和使用是非常重要的。
`ConfigurationManager`在应用程序启动时已经加载并缓存了`struts.xml`的配置。 8. `ActionProxy`知道要执行哪个Action后,会创建并调用这个Action的实例,执行其相应的方法。 9. Action执行完毕后,`ActionProxy`...
Struts是MVC(Model-View-Controller)设计模式的一个实现,主要用于处理用户的请求和控制应用程序的流程。它负责接收HTTP请求,通过Action类将请求分发到相应的业务逻辑,并将结果传递给视图进行展示。在Struts中,...