SpringMVC工作原理(1)

article/2025/9/14 1:33:22

    大家好,今天和大家分享SpringMVC的相关知识,主要是对SpringMVC的工作原理做一些分析。

    SpringMVC的工作流程如下:

    接下来我们先来对其中的组件以及相应的功能来做简单介绍:

    组件:

1.DispatcherServlet

DispatcherServlet是我们所说的前端控制器,由框架进行提供,作用是接收请求,返回相应结果,同时负责调度其他组件进行工作,是SpringMVC的核心处理器,相当于SpringMVC的大脑。这个组件存在的意义很大一部分是对其他组件进行了解耦。

2.HandlerMapping

HandlerMapping是处理器映射器,由框架进行提供,负责根据用户的请求来查找相应的处理器对用户请求进行处理,SpringMVC中也提供了不同的映射器以实现不同的映射方式,类似于注解,xml配置文件,实现接口等方式。

3.HandlerAdapter

HandlerAdapter是处理器适配器,由框架进行提供,适配器会按照特定的规则使用处理器,通过适配器调用处理器处理用户请求的好处在于可以通过扩展适配器的方式来对更多类型的处理器进行调用。

4.Handler

Handler是我们常说的处理器,也是我们的后端处理器,需要由开发者根据不同的需求进行开发,但是Handler的开发需要遵从适配器规则,这样才能被适配器进行调用,然后去处理用户相应请求。

5.ViewResolver

       ViewResolver是视图解析器,负责将处理器返回的结果处理成视图,视图解析器首先会根据处理器回传的逻辑视图名找到具体的页面地址,然后生成一个View视图,最后会将视图交给前端控制器对视图进行渲染后将页面展示给用户。

6.View

View就是上面所说的视图,是由开发人员进行开发,由视图解析器进行渲染的对象。


运行过程

1.用户发送请求给前端控制器DispatcherServlet

2.DispatcherServlet接收到用户请求后,通过调用HandlerMapping处理器映射器寻找合适的处理器进行处理。

3.处理器映射器找到具体的处理器后,生成处理器对象以及处理器拦截器,并返回给前端控制器。

4.前端控制器通过调用处理器适配器,将请求交给处理器进行处理。

5.处理器适配器调用具体的处理器对请求进行处理。

6.处理器处理完成后返回ModelAndView。

7.处理器适配器将处理器返回的ModelAndView返回给前端控制器。

8.前端控制器将ModelAndView交给视图解析器进行解析。

9.视图解析器解析之后返回具体的View。

10.前端控制器根据具体的View进行渲染。

11.前端控制器响应用户请求。

以上就是SpringMVC的简单处理流程,我们发现核心在于前端处理器,前端处理器的存在将各个组件进行了解耦,并对用户请求做出相应的响应,也就是说前端处理器成了用户请求的唯一接收方,至于后续逻辑,则全部进行了封装,不对外暴露,做了非常好的封闭性。

好了,今天就先分享这些知识,如果大家觉得我们的文章对您有用,请关注我们的公众号,每天一篇干货文章。

 

http://chatgpt.dhexx.cn/article/lge9P7TR.shtml

相关文章

SpringMVC工作原理详解

SpringMVC工作原理详解 在学习之前,先来两张神图镇楼 什么是MVC 经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式…

springMVC工作原理(含图)

SpringMVC流程 1、 用户发送请求至前端控制器DispatcherServlet。 2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给Dis…

理清SpringMVC工作原理

一、首先,我们先来认识一下SpringMVC的主要组件 前端控制器(DisatcherServlet):接收请求,响应结果,返回可以是json,String等数据类型,也可以是页面(Model)。 处理器映射器&#xff0…

SpringMVC工作原理及源码解析

SpringMVC工作原理及源码解析 一:SpringMVC原理图二:SpringMVC的主要组件1、前端控制器DispatcherServlet:2、处理器映射器HandlerMapping:3、处理器适配器HandlerAdapter:4、处理器Handler:5、控制器Contr…

SpringMVC工作原理和工作流程

在博客看见一编写的非常清晰的博客,对现在的注重开发层面不注重底层原理的还是有用处的。 原文出处:https://www.cnblogs.com/xiaoxi/p/6164383.html SpringMVC工作原理 SpringMVC的工作原理图: SpringMVC流程 1、 用户发送请求至前端控制…

SpringMVC的简介概述、工作原理

SpringMVC简述概括 SpringMVC的工作原理

SpringMVC工作原理之参数解析

前面分析到 SpringMVC工作原理之处理映射[HandlerMapping] ,由映射处理器(HandlerMapping) 解析出对应的 handler。接着 SpringMVC工作原理之适配器[HandlerAdapter] 描述了 handler 是怎么匹配到合适的适配器,进行 handler 对应方法的执行。其他几种适配…

16.springmvc工作原理分析

springmvc 如何做URL映射关系 1.SpringIOC容器加载时开始遍历所有的bean对象 判断 bean对象 类上是否有加上 Controller注解,如果类上有加该注解的话 则该类就是为我们控制类; 2.在容器初始化时会建立所有url和controller的对应关系,利用java反射机制…

SpringMVC工作原理及其流程

本文介绍SpringMVC的基本原理,对于一个浏览器请求,SpringMVC的处理流程。 SpringMVC主要包含一下组件 DispatcherServlet-前端控制器HandlerMapping-处理器映射Controller-控制器ViewResolver-视图解析器View-视图Spring的请求流程 SpringMVC的核心在于其请求流程,这是使用…

阿里云YUM源配置

文章目录 阿里云YUM源配置1.备份原有yum源2.根据自己系统下载yum源3.重新加载yum0x00. 阿里云YUM源配置 今天,打开我的Centos7系统,美滋滋要搭建一波LAMP环境。一把梭哈。 yum -y install httpd mariadb mariadb-server php php-mysql 奈何,…

Linux学习-20-yum介绍,yum源配置

7.8 yum介绍,yum源配置 使用 SRPM 源码包和 RPM 二进制包安装软件,这两种方法都比较繁琐,需要手动解决包之间具有依赖性的问题,尤其是库文件依赖,需要自行去 http://www.rpmfind.net 网站上查找相关的 RPM 包。 7.8.…

yum源配置及相关命令

1.yum概述 yum是软件管理仓库,可以完成安装,卸载,自动升级rpm包等任务,能够自动查找并解决rpm包之间的依赖关系,而无需管理员手工安装每个rpm包 2.本地源和网络源 本地源:比如说光盘里面一般会附带一些软件&#xff0c…

redhat yum源配置-已成功

提示:几分钟就搞定,替大家避坑了。 yum源配置 redhat使用yum源时不成功,这是因为使用 redhat 自带的 yum源要付费,所以需要自己重新生成 yum源,Redhat7 和Centos7是完全一样的,可是安装完Redhat7以后&#…

Openstack实验之yum源配置

1.实验目的 对于企业的Openstack私有云,出于对安全和某些因素的安全考虑,有些服务器无法访问公网,导致服务器无法更新某些RPM包,同时内部常有Openstack新特性开发需求,版本的维护与升级,因此非常有必要构建…

CentOS6.5 yum源配置

编辑配置文件 vim /etc/yum.repos.d/CentOS-Base.repo将以下内容复制到配置文件中 [base] nameCentOS-6 failovermethodpriority baseurlhttp://mirrors.aliyun.com/centos-vault/6.5/os/x86_64/ gpgcheck0生成缓存 yum clean all#清除全部 yum makecache#生成缓存也可以 c…

阿里云的yum源配置

首先,将目录切换至/etc/yum.repos.d,这个是需要更换的yum源,一般系统都自带有yum源,但是下载速度很慢,所以需要将yum源换为国内的yum源, 这里一般有两种方法: 1、首先使用wget 下载阿里云的yum源…

FTP - YUM 源配置

** Ftp yum源配置 一、 环境需要 1、2台centos A和B 2、配置两台主机的ip 3、关闭防火墙(2台) [rootlocalhost ~]# systemctl stop firewalld[rootlocalhost ~]# systemctl disable firewalld关闭selinux [rootlocalhost ~]# vim /etc/sysconfig/selinux把SELINUXenforcing改…

yum源配置,这一篇就够了!(包括本地,网络,本地共享yum源)

服务器yum源配置 文章目录 1. 引言1.1 什么是yum源1.2 为什么要搭建内网yum源1.3 准备工作 2. yum源搭建2.1 网络yum源配置2.1.1 yum仓库配置2.1.2 更新yum源2.1.3centos yum源一键配置命令2.1.4 其他yum源参考 2.2 本机单机yum源配置2.2.1 iso镜像获取并上传到服务器2.2.2 rep…

Linux下局域网yum源配置

文章目录 一 需求二 搭建环境准备三 服务端1 创建镜像存放目录与挂载目录2 上传centos7镜像3 对镜像文件进行挂载4 配置本地yum源5 对挂载点建立软链接6 安装http服务7 浏览器验证http服务是否正常启动 四 客户端1 修改yum配置文件2 查看yum源 一 需求 企业内部服务器出于安全…

yum源配置教程

环境:Centos7系统、Centos7镜像文件(下文中提到的光盘)、能连接互联网 yum是Linux平台下的一个包管理工具,全称叫做Yellow dog Updater,Modified,Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器…