Spring MVC相关知识点

1.Spring MVC的理解?

首先,MVC模型是模型,视图,控制器的简写,其思想核心是通过将请求处理控制,业务逻辑,数据封装,数据显示等流程节点分离的思想来组织代码。

所以,MVC是一种设计模式,而SpringMVC是一款基于MVC设计模式思想实现的MVC框架,属于Spring技术栈的一部分。SpringMVC可以帮我们进行更加简洁的web层开发,并且他天生与Spring框架集成,更利于架构的设计与搭建。

2.SpringMVC的工作原理(执行流程)?

1.客户端(浏览器)发送请求,统一由DispatcherServlet拦截处理请求。

2.DispatcherServlet根据请求信息调用HandlerMapping.HandlerMapper根据uri去匹配查找能处理的Handler(也就是我们定义的Controller控制器),并会将请求涉及到拦截器和Handler一起封装。

3.DispatcherServlet调用handlerAdapter适配执行Handler。

4.Handler完成对用户请求的处理后,会返回一个ModelAndView模型视图对象给DispatcherServlet。ModelAndView中包括了模型数据以及相应的视图模型。Model是返回的数据对象,View是View视图的逻辑名称。

5.ViewResolver会根据逻辑View名称查找并解析实际的View视图文件,并根据DisperServlet返回的Model模型数据传给View视图文件,并进行渲染执行,产生响应结果。

6.DispaterServlet负责将相应结果,输出至客户端浏览器。

3.SpringMVC的核心组件有哪些?

DispatcherServlet:核心处理器,负责统一接收请求,将请求分发至不同的控制器,并负责客户端响应。

HandlerMapping:处理器映射器,根据uri去匹配查找能处理的Handler,并会将请求涉及到拦截器和Handler一起封装。

HandlerAdapter:处理器适配器,根据HandlerMapping找到Handler,适配执行对应的Handler;

Handler: 请求处理器,处理实际请求的处理器。

ViewResolver:视图解析器,根据Handler返回的逻辑视图名称,解析并渲染真正的视图文件,并传递给DispatcherServlet响应至客户端

相关推荐
hqxstudying33 分钟前
mybatis过渡到mybatis-plus过程中需要注意的地方
java·tomcat·mybatis
lichkingyang41 分钟前
最近遇到的几个JVM问题
java·jvm·算法
ZeroKoop1 小时前
多线程文件下载 - 数组切分,截取文件名称
java
Monly211 小时前
IDEA:控制台中文乱码
java·ide·intellij-idea
叫我阿柒啊1 小时前
从全栈开发到微服务架构:一次真实的Java面试实录
java·redis·ci/cd·微服务·vue3·springboot·jwt
superlls2 小时前
(计算机网络)JWT三部分及 Signature 作用
java·开发语言·计算机网络
多工坊2 小时前
【DataGrip】连接达梦数据库后,能查询数据但是看不到表的几种情况分析,达梦数据库驱动包下载DmJdbcDriver18.jar
java·数据库·jar
秋难降3 小时前
优雅的代码是什么样的?🫣
java·python·代码规范
现在就干3 小时前
Spring事务基础:你在入门时踩过的所有坑
java·后端
浮游本尊3 小时前
Java学习第13天 - 数据库事务管理与MyBatis Plus
java