Struts2的 Struts2工作原理和执行流程图

超详细struts2执行流程图 这张流程图 深刻的描述了 struts2的执行流程 帮助了解Struts2 立即下载

转载:点击打开链接http://www.cnblogs.com/zzfweb/archive/2016/05/23/5521217.html

图文解析Struts2框架执行流程

 

struts的架构图

(1)提交请求

客户端通过HttpServletRequest向servlet容器(即tomcat)提交一个请求。

请求经过一系列的过滤器,例如图中的ActionContextCleanUp和Other filter(SlterMesh,etc)等,最后被struts的核心过滤器FilterDispatcher控制到。

注:核心控制器2.1.3版本之后,struts的filterDispatcher核心控制器变成了StrutsPrepareAndExecuteFilte,如图:

 

被核心控制器控制到之后才会访问Actionmapper来决定是否调用某个action(即用户是否要请求某个action)。如果是其他资源请求例如jsp页面,不会用到action。

(2)移交控制权

如果要用到action,核心控制器将控制权交给ActionProxy(即是action的代理)。

ActionProxy获得控制权之后通过ConfigurationManager对象加载核心配置文件struts.xml。

Struts的action在这个配置文件进行配置,所以要加载它。

(3)创建ActionInvocation的实例

如果在struts.xml找到需要调用的action, ActionProxy会创建一个ActionInvocation的实例。

(4)调用action前的拦截器

拦截器是struts2非常重要的概念,是核心功能实现。Struts中的大部分功能通过拦截器实现。

Actioninvocation包括创建的action实例,同时包括另外非常重要的一部分------拦截器。

调用action前后还会调用很多的拦截器。

在调用action之前会依次调用用户所定义的拦截器。

(5)调用action的业务方法进行业务处理

 当把action前的拦截器执行完之后才会调用action的业务方法进行业务处理,

然后返回一个Result(业务方法对应String类型的返回值,即是字符串,例如SUCCESS,INPUT,ERROR,NONE,LOGIN和用户自己在struts对应定义result标签name属性的值)

 

(6)匹配result

然后根据返回的字符串来调度我们的视图来匹配我们的struts.xml中对应action标签中的result标签。

一般来说返回一个jsp的页面,或者调用另外某一个action。

 

(7)反向执行拦截器

当返回视图之后并没有真正响应用户,还需要把执行过的拦截器倒过来反向执行一遍。

(8)响应客户端

当这些拦截器被反向执行之后,通过HttpServletResponse响应客户端的请求。

 

struts2框架执行流程大致这样,如有不对,敬请指出,谢谢!


数字电子时钟——数字电路课设 本文设计了一种基于中小规模集成电路的数字电子时钟系统,采用模块化设计方法,包含晶振电路(CD4060+D触发器)、计时电路(74HC161计数器)、数码管驱动(CD4511)和整点报时功能。系统实现了60进制秒/分、24进制小时、7进制星期的计时显示,支持手动校时功能,并具备整点报时特性(59分54-58秒5次500Hz低音,59秒1次1000Hz高音)。通过分模块调试与整合,最终实物电路满足设计要求,获得优秀评价。 阅读详情

相关推荐

Amesim与Simulink联合仿真:S-Function接口配置与实战避坑指南

本文详细介绍了Amesim与Simulink联合仿真中S-Function接口的配置方法与实战避坑指南。从环境搭建、编译器配置到S-Function接口实战,逐步解析关键步骤与常见问题解决方案,帮助工程师高效实现多领域系统仿真,特别适合汽车、航空航天等复杂系统建模场景。

weixin_29173777的博客 344

struts2运行流程图

参考文档:https://blog.csdn.net/qq_37230121/article/details/80229927 一、系统架构 Struts2的官方文档附带了Struts2的架构图。从这张图可以很好的去理解Struts2:如上图 关于图中的Key: Servlet Filters:过滤器链,客户端的所...

我想静静 324

Matlab Robotics Toolbox实战:四自由度机械臂建模与仿真全流程(附代码)

本文详细介绍了使用Matlab Robotics Toolbox进行四自由度机械臂建模与仿真的全流程,包括DH参数定义、模型构建、可视化、运动学仿真及交互控制。通过实战案例和代码示例,帮助读者快速掌握机械臂建模技巧,提升机器人学习效率。

weixin_42538752的博客 415

详解:Struts2工作原理和执行流程图

Struts2是一套非常优秀的Web应用框架,实现优雅、功能强大、使用简洁。可以说是Struts2是一款非常成熟的MVC架构。 在我们学习Struts2时,最好是先学习它的运行流程、核心概念,从中得到启发,提升自己,而不仅仅是学习怎么怎么使用它。 在网上看到这样一句话: 你千万不要成为一个只会熟练使用框架的程序员,那样,你会疲于奔命,你也许永远只会使用 Hadoop ,而写不出一个 Hadoop ...

weixin_43817989的博客 415

C#粘包和分包问题及解决方法

一:通过图解法来描述一下分包和粘包,这样客户更清晰直观的了解:  下面对上面的图进行解释:  1.正常情况:如果Socket Client 发送的数据包,在Socket Server端也是一个一个完整接收的,那个就不会出现粘包和分包情况,数据正常读取。  2.粘包情况:Socket Client发送的数据包,在客户端发送和服务器接收的情况下都有可能发送,因为客户端发送的数据都是发送的一个缓冲...

weixin_42033401的博客 7767

【5G全网建设】Option3X和Option2模式建安市、兴城市和四水市核心网、承载网网络设计与部署

拓扑规划: Option 3X网络拓扑图规划 Option 2网络拓扑图规划 设备部署: 建安市核心网 建安市承载中心机房 建安市骨干汇聚机房 建安市3区汇聚机房 建安市C站点无线机房 兴城市核心网 兴城市承载中心机房 兴城市骨干汇聚机房 兴城市2区汇聚机房 兴城市B站点无线机房 数据配置: 建安市核心网 建安市承载中心机房 建安市骨干汇聚机房 建安市3区汇聚机房 建安市C站点无线机房 兴城市核心网 兴城市承载中心机房 兴城市骨干汇聚机房 兴城市2区汇聚机房 兴城市B站点无线机房 业务调试

weixin_67183034的博客 8858

图文浅谈Struts2框架的执行流程

struts的架构图 (1)提交请求 客户端通过HttpServletRequest向servlet容器(即tomcat)提交一个请求。 请求经过一系列的过滤器,例如图中的ActionContextCleanUp和Other filter(SlterMesh,etc)等,最后被struts的核心过滤器FilterDispatcher控制到。 注:核心控制器2

wdx__123的博客 1055

Metal 一、初识 Metal 及其语言规范

游戏开发者的新的技术平台,该技术能够为3D图像提高 10 倍的渲染性能。苹果2018年推出 Metal,在此之前一直使用OpenGL ES。1图形渲染;2高并发计算。苹果文档给出的 Metal 优化:CPU 低消耗、GPU 高利用、连续处理器并行、有效的资源利用Metal 官方文档。

irainsa的博客 1219

struts2流程及源码分析

struts2流程及源码分析struts2流程及源码分析struts 架构图判断是否需要struts处理创建数据中心ActionContext增强包装request对象ActionMapping核心代理转发阶段——创建ActionProxyAction执行阶段——拦截器执行Action执行 struts2流程及源码分析 struts 架构图 分析这个架构图,我们可以从4个部分,也就struts访...

weixin_38319353的博客 282

OData Request:Create Entity 在 ABAP OData Client Proxy 中的工程化实践

文章摘要 本文针对具备 SAP Gateway 与 ABAP 开发经验的读者,详细讲解如何通过 ABAP OData Client Proxy 实现 OData 服务的 Create 操作。首先对比了 OData V2 与 V4 的 Create 规范差异,强调键、集合 URL 和请求体的标准化要求。随后介绍了 ABAP Client Proxy 的编程模型,包括 Client Proxy、Entity List Resource 和 Create Request/Response 三个核心对象,并提供了完

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 247

财务数智化——解读224页 2025年数智技术业财融合应用蓝皮书【附全文阅读】

《数智技术赋能业财融合蓝皮书》面向企业管理者及数字化转型从业者,系统阐述数智技术在业财融合中的应用。全书围绕技术基础(定义、分类、发展趋势)、融合框架(三阶段路径与三层价值)、七大行业应用场景(涵盖核算自动化、智能收款、项目管控等)、关键技术(AI、大数据等)及实施要点(组织协同、数据治理等),通过典型案例为企业提供从技术到实践的全面指导,助力实现数据贯通与价值创造。

cdfunlove的博客 1747

重要!!!!!struts2执行流程图

ustcyy91的博客 296

库存管理系统项目部署方案(基于jdk8)

不需要安装到服务器,运维本地安装就行,主要是用来编译前端代码的。构建完成后将dist文件夹复制到服务器内。

程序员诚哥 2576

Struts2工作原理和执行流程图

1、Struts2请求响应流程:   在struts2的应用中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller、ActionProxy、ActionMapping、Configuration Manager、ActionInvocation、Inerceptor、Action、Result等。下面根据 struts2.0体系架构图来解析这些组件之间的

沙漏 3万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

分享知识-快乐自己:Struts2框架 工作原理及执行流程图(拦截器的使用)

Struts2 架构图: 1):提交请求 客户端通过 HttpServletRequest 向 Servlet (即Tomcat)提交一个请求。 请求经过一系列的过滤器,例如图中的 ActionContextCleanUp 和 Other filer (SlterMesh,etc)等,最后被 Struts 的核心过滤器 FilterDispatcher 控制到。 注:核心...

andymmm0925的博客 164

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

struts2 执行流程

Struts2执行流程图及说明网上也有很多,不过也不及自己画一次来的印象深刻。 Struts2的关键是一系列的拦截器。

AlphaBINGOD 166

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Struts2学习笔记(一)——工作原理

这里我们来看一下SSH框架及MVC模式的联系: 关于struts2的历史,这里大家可以自行去搜索相关资料。struts2是结合了struts1和webwork框架的综合体,其内核是webwork框架。在struts2的学习中,我们需要了解的知识有:struts2配置、struts2的结果类型、struts2处理请求参数、struts2的类型转换、struts2的校验、struts2国

changhenshui1990的博客 427

Struts2<3>拦截器

拦截器简介 Struts2 拦截器是在访问某个 Action 或 Action 的某个方法,字段之前或之后实施拦截,并且 Struts2 拦截器是可 插拔的,拦截器是AOP的一种实现. 优点:通用功能的封装,提供了可重用性. 原理 Struts2的拦截器的实现原理和过滤器的实现差不多,对你真正想执行的 execute()方法进行拦截,然后插入一些自己的逻辑。如果没有拦截器,这些要

wicycc的专栏 482

Struts2工作原理以及核心思想

Struts2JAVA基础学完,肯定是要面临三大框架的学习的,作为初学者,了解三大框架的原理,设计目的是首要任务,只有在把握了框架的设计目的以后,才能有针对性的取学习使用框架,这里从strue2框架开始,介绍三大框架,让新手能有一个总的了解跟思维导图。 1. 什么是Struts2? Struts2 是一个非常优秀的MVC框架,基于Model2 设计模型 由传统Struts1和WebWork两个经典

小疯子的博客 8万+
上一篇: Spring的Aop编程
下一篇: Spring工作原理
wf_learner
博客等级 码龄11年 4粉丝 2原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值