SpringMVC对请求的处理流程

news2024/11/24 3:49:43

在这里插入图片描述

 

1.用户发起some.do请求

2.DispatcherServlet中央调度器接收请求some.do,把请求转交给处理器映射器
 处理器映射器:SpringMVC框架中的一种对象,框架实现了HandlerMapping接口的类都叫映射器(多个)

 处理器映射器的作用:根据请求,从SpringMVC容器对象中获取处理器对象(相当于

ApplicationContext ac=new ClassPathXmlApplicationContext(“springmvc.xml”)
MyController controller=ac.getBean("some.do")
)


 框架把找到的处理器对象反倒一个叫做处理器执行链(HandlerExecutionChain)的类里保存
 HandlerExecutionChain:类中保存着:1.处理器对象(MyController)
                 2.项目中所有的拦截器List<HandlerInterceptor>

3.DispatcherServlet把2中的HandlerExecutionChain中的处理器对象交给了HandlerAdapter处理器适配器对象(多个)
 处理器适配器:SpringMVC框架中的对象,需要实现HandlerAdapter接口。
 处理器适配器作用:执行处理器方法(调用MyController.dosome()得到返回值ModelAndeView)

4.DispatcherServlet把3中获取的ModelAndView交给了ViewResolve视图解析器对象。
 视图解析器:SpringMVC中的对象,需要实现ViewResolve接口(可以有多个)
 视图解析器作用:组成视图完成路径,使用前缀、后缀。并创建View对象。
 View是一个接口,表示视图的,在框架中jsp,html不是String表示。而是使用View和他的实现类表示视图的。
 InternalResourceView:视图类,表示jsp文件,视图解析器会创建InternalResourceView类对象。这个对象的里面,有一个属性url,当我们设置好视图解析器后,url=前缀+逻辑名称+后缀
比如url=/WEB-INF/jsp+show+.jsp

5.DispatcherServlet把4步骤中创建的View对象获取到,调用View类自己的方法,把Model数据放入到request作用域。执行对象视图的forward,请求结束。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/539790.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ajax加强(xhr、XML、JSON、xhr上传文件)

文章目录 一、XMLHttpRequest的基本使用1、 使用xhr发起GET请求2、了解xhr对象的readyState属性3、使用xhr发起带参数的GET请求4、查询字符串5、URL编码与解码6、使用xhr发起POST请求 二、数据交换格式1、XML&#xff08;1&#xff09;XML和HTML的区别&#xff08;2&#xff09…

gma 1.1.6 | 2.0.0a1 (2023.05.14) 更新日志

从现在开始&#xff0c;gma 开始同步更新 gma 2 的前期预览版&#xff0c;并与 gma 1 的正式版同步发布。 gma 1.1.6 更新日志 新增 1、添加 3组 新的指北针样式。 修复 1、【map】高分辨栅格数据集内存溢出问题。   添加高分辨率栅格数据集且进行强制数据缩放时 偶现内存…

论文中文翻译——VulCNN An Image-inspired Scalable Vulnerability Detection System

本论文相关内容 论文下载地址——Web Of Science论文中文翻译——VulCNN An Image-inspired Scalable Vulnerability Detection System 文章目录 本论文相关内容前言VulCNN&#xff1a;一种基于图像的可扩展漏洞检测系统作者信息摘要CCS概念关键词ACM参考格式1 引言2 动机3 方…

软考A计划-真题-分类精讲汇总-第十八章(面向对象程序设计)

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分享&am…

CorelDRAW2023最新中文版下载操作教程

CorelDRAW是一个功能强大的矢量绘图工具&#xff0c;也是国内外最流行的平面设计软件之一&#xff0c;它是平面设计和电脑绘画功能为一体的专业设计软件&#xff0c;被广泛应用于平面设计、广告设计、企业形象设计、字体设计、插图设计、工业造型设计、建筑平面图绘制、Web图形…

《终身成长》笔记三——失败挫折的意义

目录 经典摘录 成长型思维方式的人并非感觉不到挫折感&#xff0c;抑郁感&#xff0c;但会很快反应过来&#xff0c;并马上应对 关于能力和成就&#xff0c;我们有很多错误的想法&#xff0c;特别是我们总认为&#xff0c;是那些孤独、聪明的人突然间发明了了不起的东西 思维…

需要买apple pencil吗?比较好用的ipad手写笔

实际上&#xff0c;苹果Pencil和市面上常见的电容笔最大的不同之处在于&#xff0c;它们的重量和压感是不同的。但由于苹果Pencil价格较高&#xff0c;且平替电容笔的各项功能也在不断完善&#xff0c;因此&#xff0c;平替的使用逐渐取代了苹果Pencil。下面&#xff0c;我就给…

博途中S7-1200中DB块整体清零(非优化的DB)的方法演示

博途中S7-1200中DB块整体清零(非优化的DB)的方法演示 具体方法可参考以下内容: 如下图所示,博途中新建项目后,添加一个DB块,我这里以命名为DB112,并取消优化的块访问, 如下图所示,在该DB块中添加几个变量,编译该DB块后会出现具体的偏移地址, 如下图所示,添加一个…

Maven基础学习---1、Maven的作用、什么是Maven

1、Maven的作用 1.1 Maven作为依赖管理工具 1、jar包的规模 随着我们使用越来越多的框架&#xff0c;或者对框架封装程度越来越高&#xff0c;项目中使用的jar包也越来越多。项目中&#xff0c;一个模块里面用到上百个jar包时非常正常的。 比如下面的例子&#xff0c;我们只…

Java --- redis7的缓存淘汰策略

目录 一、redis内存查看与设置 二、redis的数据删除方式 三、redis缓存淘汰策略 一、redis内存查看与设置 查看redis最大占用内存&#xff1a; redis默认内存使用&#xff1a; 不设置最大内存大小或设置为0&#xff0c;在64位操作系统下不限制内存大小&#xff0c;32位操作系…

【Python 统计学习】零基础也能轻松掌握的学习路线与参考资料

Python 作为一种功能强大而且易于使用的编程语言&#xff0c;被广泛应用于数据科学和统计学习领域。如果你想要在这个领域有所成就&#xff0c;下面是 Python 统计学习学习路线的建议。 Python 基础知识 如果你还没有 Python 的基础知识&#xff0c;那么首先需要学习 Python 的…

博客园美化教程

博客园美化教程 一、进入管理>设置>勾选下面的JS权限&#xff0c;然后填写一下开通的理由等待管理员进行审核通过。 二、选择下面的博客皮肤 三、贴入以下CSS代码到自定义&#xff0c;并禁用CSS默认模板 *,.Cal{padding:0}::-moz-selection{background:#807dd4;color:#…

chatgpt-验证手机出错-您的帐户被标记为可能存在滥用行为

一、问题 问题显示&#xff1a;Your account was flagged for potential abuse. If you feel this is an error,please contact us at help.openai.com&#xff08;您的帐户被标记为可能存在滥用行为&#xff0c;如果您认为这是一个错误&#xff0c;请联系我们 help.openai.co…

7.机器学习诊断法

怎样评估机器学习算法的性能&#xff1f; 利用机器学习诊断法来评估机器学习算法的性能。诊断法是一种测试法&#xff0c;通过这种测试能够了解算法在哪里出了问题&#xff0c;这也能够告诉我们要想改进一种算法的效果、什么样的尝试才是有意义的。 7.1 评估假设 评价算法学…

【数据结构】树,二叉树,满二叉树,完全二叉树的定义和二叉树的基本操作

&#x1f38a;专栏【数据结构】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【勋章】 大一同学小吉&#xff0c;欢迎并且感谢大家指出我的问题&#x1f970; 目录 ⭐树 &#x1f3f3;️‍&#x1f308;定义 &#x1f3f3;️‍…

祝贺!Coremail连续4年入选中国网络安全市场全景图

5月16日&#xff0c;数说安全正式发布《2023年中国网络安全市场全景图》&#xff08;以下简称“全景图”&#xff09;。作为国内头部电子邮件产品与解决方案提供商&#xff0c;Coremail凭借着出色的产品技术和服务&#xff0c;连续4年入选“邮件安全”领域&#xff0c;体现行业…

计算机视觉 day 93 学习像素级膨胀滤波的高效率单图像去噪

学习像素级膨胀滤波的高效率单图像去噪 1 Introduction3 Methodology3.1 逐像素图像滤波解调3.2 可学习像素级膨胀滤波Kernel prediction network&#xff08;核预测网络&#xff09;Multi-dilated image filtering and fusion&#xff08;多扩张图像滤波与融合&#xff09; 3.…

基础篇007. 串行通信(一)--阻塞方式发送接收

目录 1. 串行通信 1.1 串行通信概述 1.2 串行通信协议 2. 实验任务 3. 硬件原理 4. 利用STM32CubeMX创建MDK工程 4.1 STM32CubeMX工程创建 4.2 配置调试方式 4.4 配置GPIO 4.5 配置串口参数 4.6 配置时钟 4.7 项目配置&#xff1a; 4.8 串口初始化程序说明 5. 串行…

机器学习笔记 - 利用自动编码器神经网络构建图像去噪器

一、概述 传统的图像噪声去除主要是基于各种滤波器,但它们不是特定于数据的,因此可能会损失很多图像的细节,或者噪声去除的效果不是很理想。基于神经网络的自动编码器可以用于学习数据集的噪声去除滤波器。 关于自动编码器的介绍,可以参考下面的链接。https://skydance.blo…

Windows Server 2019 中文版、英文版下载 (updated May 2023)

Windows Server 2019 Version 1809&#xff0c;2023 年 5 月更新 请访问原文链接&#xff1a;https://sysin.org/blog/windows-server-2019/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;sysin.org 本站将不定期发布官方原版风格月度更…