Struts2 工作流程

在我的理解中Struts2的工作流程大概分为七步:

1、客户端发送HttpServletRequest请求;

2、这个请求经过一系列的过滤器(Filter),最后发送到FilterDispatcher中;

3、FilterDispatcher通过action mapper确定是否有对应的action,如果有,FilterDispatcher就发送到actionproxy中;

4、再由actionproxy查询Struts.xml中对应的action类,

5、actionproxy实例化一个新的对象actionInvocation,通过这个来调用action类

6、ActionInvocation负责根据struts.xml中的配置找到对应的返回结果result

7、通过HttpServletResponse响应给客户端

注意:Struts 2的核心控制器是FilterDispatcher,有3个重要的方法:destroy()、doFilter()和Init()

执行顺序是:init()---->doFilter()-------->destroy()

原文地址:https://www.cnblogs.com/liuhaihai/p/10810588.html

时间: 2024-10-08 22:01:23

Struts2 工作流程的相关文章

Struts2工作流程

Struts2是一个非常优秀的MVC框架,它主要通过StrutsPrepareAndExecuteFilter过滤器将Struts2集成到Web应用中的. 基本工作流程: 1.客户端提交一个HttpServletRequest请求(action或JSP页面): 2.请求经过一系列的过滤器(如ActionContextCleanUp,SiteMesh等): 3.Struts2的核心过滤器StrutsPrepareAndExecuteFilter被调用,并询问ActionMapper来决定这个请求是

Struts2工作流程个人解析

前面稍微学习了下Strust2基本使用,对Struts2的工作流程以及底层源码完全不懂,今天打算把Struts2的工作流程好好的摸索一遍. 1.这是一张网上download的struts2工作流程图, 对上图稍做解释: 1.首先客户端/浏览器发送一个请求到服务器,即HttpServletRequest会经过一系列(Fliter)过滤器(ActionContextCleanUp该过滤器是可选过滤器,主要作用就是对ActionContext进行CleanUp操作,不让后续的Fliter清除,延长ac

Struts2的工作流程

Struts2的工作流程 1.客户端浏览器初始化时发出HTTP请求 2.根据web.xml配置,上述请求被FilterDispatcher接收 3.根据struts.xml配置,找到需要调用的Action类和方法, 并通过IoC方式,将值注入给Aciton 4.Action调用业务逻辑组件处理业务逻辑 5.Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面 6.返回HTTP响应到客户端浏览器

Struts2 核心流程

1.Struts2架构图  这是Struts2官方站点提供的Struts 2 的整体结构.  执行流程图 2.Struts2部分类介绍  这部分从Struts2参考文档中翻译就可以了. ActionMapper         ActionMapper其实是HttpServletRequest和Action调用请求的一个映射,它屏蔽了Action对于Request等 java Servlet类的依赖.Struts2中它的默认实现类是DefaultActionMapper,ActionMapper

Struts2学习第一天——struts2基本流程与配置

struts2框架 什么是框架,框架有什么用? 框架 是 实现部分功能的代码 (半成品),使用框架简化企业级软件开发 ,提高开发效率. 学习框架 ,清楚的知道框架能做什么? 还有哪些工作需要自己编码实现 ? 什么是struts2框架,它有什么用? Struts 2是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架. 其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大.Struts 2以WebWork为核心 struts2=struts1+

Struts2工作原理

Struts2工作原理 Struts2请求响应流程: 在struts2的应用 中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller.ActionProxy.ActionMapping. Configuration Manager.ActionInvocation.Inerceptor.Action.Result等.下面我们来具体看看这些组件有什么联系,它们 之间是怎样在一起工作的. (1)  客户端(Client)向Action发用一个请求(Request)

struts2执行流程与拦截器介绍

struts2执行流程介绍 1.客户端向Servlet容器(如Tomcat)提交一个请求 2.请求经过一系列过滤器(如ActionContextCleanUp过滤器等) 3.核心控制器被调用,询问ActionMapper来决定请求是否需要调用某个Action 4.如果ActionMapper决定需要调用某个Action,核心控制器把控制权委派给ActionProxy (备注:JSP请求无需调用Action) 5.ActionProxy通过Configuration Manager询问框架的配置文

Struts2代码流程分析

以一个修改的小例子来阐述Struts2的工作流程 页面from表单     <form action="ModifyPassword.action" method="post">     <table cellspacing="0" cellpadding="5" width="100%" align="left">      <tr>     <

SSH三大框架的各自工作流程

一.Struts2的工作流程:1.用户在客户端发起请求,客户端会初始化一个servlet容器请求:2.servlet容器把请求会传递给context容器,context容器找到目标web工程.3.进行解析web.xml中的struts标签中的配置: <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPr