Struts2的优势及其工作原理

Struts2工作原理及代码 【代码】Struts2工作原理及代码。 阅读详情

Struts2的优势:


   Struts2是一个MVC框架,他用一个  filter dispatcher 作为controller。这个controller要完成一下工作:

1.决定从URI处调用哪个action

2.将action类实例化

3.如果有action对象,就要给action的属性填入请求参数

4.如果有action对象,就要调用action方法

5.将请求跳转到视图(如JSP页面)





下面是Struts的一些特性(优势):

Struts提供了一个filter dispatcher,不需要我们编写

Struts用一个基于XML的配置文件,将URI与action进行匹配

Struts将action实例化,并将用户输入的值填入action属性中。如果没有指定action类,则实例化默认的action类

Struts验证用户输入,在验证失败时,将用户重定向到输入表单。还提供了内置验证器

Struts调用action方法,可通过配置文件来修改




Struts2的工作原理:


Strut2的filter dispatcher的全类名为org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

在使用filter之前,要先配置

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>


Struts2将filter dispatcher任务细分,成为处理子任务的子组件,称为拦截器


对于每一次的action调用,filter dispatcher必须完成以下工作:

1.询问Configuration Manager ,根据请求URI决定要调用哪个action

2.运行这个actio注册的每一个拦截器,第一个拦截器传入action对象属性

3.执行action方法

4.再次运行拦截器,按照与原先相反的调用顺序

5.接收action返回的String,匹配执行结果,显示视图


IEEE 754浮点数与十六进制转换:从原理到实战避坑指南 在计算机系统中,数据的二进制表示与内存布局是底层开发的核心基础。IEEE 754标准定义了浮点数在内存中的精确格式,包括符号位、指数位和尾数位的分工,以及零、无穷大和NaN等特殊值的编码。理解这一原理对于处理原始字节流至关重要,尤其是在涉及跨平台或跨设备通信时。其技术价值在于,它能帮助开发者从根本上解决数据解析错误、通信协议不一致以及程序调试中的“灵异”问题。在嵌入式开发、网络通信(如Modbus协议)和固件解析等应用场景中,浮点数与十六进制的转换是高频操作。然而,字节序(大端/小端)是转换过程中最常见的“ 阅读详情

相关推荐

智能车竞赛走马观碑组:如何高效识别目标板并优化绕行策略(附实战代码)

本文深入探讨了智能车竞赛走马观碑组中,如何构建从图像识别到路径决策的全栈优化方案。针对目标板识别与绕行策略的核心难点,文章详细解析了基于MobileNetV2的高效识别流水线、结合预瞄点与纯追踪算法的平滑路径规划,以及横向与纵向协同控制策略,并提供了实战代码与调试指南,旨在全面提升小车的比赛表现。

o5p6q的博客 884

Struts2工作原理详解

Struts2的工作原理图如下所示: Struts2工作原理详解: 1、Struts2框架会将得到的用户请求封装成为一个HttpServletRequest请求对象。 2、这个请求会经过一系列的过滤器,如果Struts2与其他的框架进行了集成,首先会经过ActionContextCleanUp过滤器,然后再经过其他的一些过滤器,最后经过核心过滤器FilterDispatcher或Stru...

我是猿小白的博客 4087

DTS中video-interfaces接口详解

视频数据管道通常由外部设备组成,例如通过I2C、SPI或UART总线控制的摄像机传感器,以及SoC内部IP块(包括视频DMA引擎和视频数据处理器)。 SoC内部块由DT节点描述,与其他SoC块放置方式类似。外部设备表示为它们各自总线控制器节点的子节点,例如I2C。 所有视频设备上的数据接口都由它们的子“port”节点描述。端口的配置取决于参与数据传输的其他设备,并由“endpoint”子节...

龙图腾的博客 9008

【框架学习】Struts2(一)工作原理

众所周知Struts2是MVC模式在web开发中经典的框架之一,学习web开发,这也是一个必经过之路吧,实在不行也得瞅瞅,万一哪天用到了。技术优势: Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Servlet API揭示了Java Servlet只是Java API的一个很小子集,这样我们可以在业务逻辑

小鼠标的博客 1541

从原理到代码:拆解UniFormer中动态位置嵌入(DPE)的3D卷积实现

本文深入解析了UniFormer模型中动态位置嵌入(DPE)模块的3D卷积实现原理与代码。DPE通过一个轻量的3D深度可分离卷积,替代传统静态位置编码,使模型能自动学习视频数据的时空位置关系。文章对比了其与Swin Transformer相对位置偏置的优劣,并提供了PyTorch实现代码与高级定制方案,为视频理解任务提供了高效灵活的动态位置编码解决方案。

weixin_29207149的博客 309

基于STM32的多模态智能风扇控制系统设计与实现

本文详细介绍了基于STM32单片机的多模态智能风扇控制系统的设计与实现。系统集成了红外遥控、蓝牙手机控制及人体感应等多模态交互方式,通过PWM技术实现无级调速,并设计了安全优先的控制逻辑。文章从硬件选型、核心原理、软件编程到系统调试,提供了完整的实战指南,适合嵌入式开发爱好者学习与实践。

weixin_28285943的博客 238

struts2原理及基本应用

struts2工作原理 1、tomcat启动,会先去读取web.xml文件;然后会去初始化struts2核心过滤器StrutsPreparedAndExecuteFilter,在该过滤器中第一次会调用过滤器中的init方法进行初始化,而初始化方法中就有一个对象,Dispatcher对象,该对象会去读取并解析struts2.xml,struts-default.xml等文件。 2、客户端向服务器发送...

hyly_zhard的博客 752

python语言字符串练习题

描述:find()方法检测字符串中是否包含子字符串str,如果指定 beg(开始)和end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串,返回字符串中,子字符串第一个字符的索引值,否则返回-1。描述:find()方法用来检测字符串中是否包含子字符串str,在指定范围内,如果包含子字符串,返回字符串中,子字符串第一个字符的位置,否则返回-1。命令行先后输入两个字符串,然后利用find()方法找出第二个字符串在第一个字符串中出现的位置。本关需要你编写一个程序,输出字符串的长度。

国家一级致癌物 2025

Struts2工作原理(图解)—六大核心组件关系

写在前面:Struts2主要包含前端控制器FC、Action、ValueStack容器、Result、Interceptor拦截器、Tags标签6个核心组件,本文主要介绍这几个组件的合作关系,由此构成Struts2的工作流程,以便更好地理解和使用Struts2。 背景知识 1、Struts2基础标签     1)用于输出的标签         --*    value的值实际上是OGNL表

厚积而薄发,谋定而后动 1万+

TIA protal与SCL从入门到精通(4)——软件单元使用

平台: TIA portal 15.1 1.添加软件单元 添加软件单元如下图: 关于软件单元使用基本限制,看如下文章即可 TIA protal与SCL从入门到精通(3)——软件单元基本介绍 每个软件单元是一个独立结构,所以每个软件单元的运行方式与实际PLC类似,所以首先添加主函数块: 注意:无论系统是否是具有并发性(这里不要混淆并行与并发的概念),在PLC所有主函数执行总是按主函数依次完成...

苦走一口田 7375

duilib入门基础一 容器之 BOX、VBOX、HBOX布局及其子控件align排列方式

序 容器 duilib有以下主要布局容器 Box(自由布局容器) VBox(垂直布局容器) HBox(水平布局容器) TabBox(多标签布局容器) TileBox(格子布局容器) ChildBox(子布局容器) ScrollableBox(可滚动容器) 一、Box容器布局 Box容器及其扩展VBox HBox是其中最常用的容器。 相对Box来说,HBox, VBox更好理解些 1.1 VBox HBox VBox下的各个控件垂...

目前打算换一个工作,有招聘windows c++方向的也欢迎联系,北京、济南 最好 3082

Struts2工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The JavaServl

assca的博客 253

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Struts1、Struts2、Hibernate、Spring框架工作原理介绍

Struts1工作原理 Struts1工作原理图 1、初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(struts-config.xml)的配置信息,为struts中不同的模块初始化相应的对象。(面向对象思想)   2、发送请求:用户提交表单或通过URL向WEB服务器提

The Best Or Nothing~ 5331

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

struts2的核心和工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Serv

wanwei1987的博客 558

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Struts2的核心和工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Serv

小刀 437

struts2 核心与工作原理

设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Servlet API揭示了java Servlet只是Java API的一个很小子集,这样我们可以在业务逻

NightGone的专栏 573

Struts2核心和工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Serv

huangjinsheng1988的专栏 498

struts工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标     Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。 技术优势     Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The JavaServl

ljl18566743868的博客 342
上一篇: myeclipse struts2环境配置(入门教程)
下一篇: Struts2的配置文件详解
oldbig_lin
博客等级 码龄10年 78粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值