SpringMvc的核心组件和执行流程

一、 springmvc的核心组件及作用

1.DispatcherServlet:前置控制器,是整个流程控制的核心,用来控制其他组件的执行,降低了其他组件的耦合性

2.Handler:控制器,完成具体的业务逻辑,当DispatcherServlet接收到请求后,会将不同的请求分发到不同的Handler中,而Handler的实现要靠HandlerMapping

3.HandlerMapping:将请求映射到Handler,根据不同的请求,找到不同的Handler

4.HandlerInterceptor:处理器拦截器,是一个接口,若要做一些拦截处理,可以实现这个接口,来完成对应的拦截功能

5.HandlerExceptionChain:处理器执行链

6.HandlerAdapter:处理器适配器,Handler在执行业务前执行一系列的操作(对表单数据的处理,数据转换等),DispatcherServlet通过它来给Handler分发请求

7.ModelAndView:装载模型数据和视图信息,视图信息指逻辑视图作为Handler的处理结果返回给DispatcherServlet

8.ViewResolver:视图解析器,将逻辑视图解析为物理视图,最终将结果渲染给客户端。

二、springmvc的实现流程

1.客户端请求被DispatcherServlet接收

2.DispatcherServlet将请求映射到Handler

3.生成Handler以及HandlerInterceptor

4.返回HandlerExceptionChain(Handler + HandlerInterceptor),HandlerInteceptor至少包含一个(默认的)

5.DispatcherServlet通过HandlerAdapter执行Handler

6.返回一个ModelAndView,这个结果包含了逻辑视图和数据模型

7.DispatcherServlet通过ViewResolver进行解析,将逻辑视图转换成物理视图,并完成模型数据的封装

8.返回填充了模型数据的View,响应给客户端

三、流程图

四、生活

生活 :前几天刚举行完运动会,也不知道怎么的大腿疼的要亖,感觉老想抽筋,跑完二百米就更疼了,膝盖也挺痛的。不过一切都会好起来的
学习 :项目就不说了,挺难的,感觉自己就用了一些简单的sql语句,麻烦一点的就是多态sql了,那些再难的查询什么的都没有,项目结束后要深入学习mysql,看能不能修改项目。也熬过两次夜,但是感觉效果不如早起,早起yyds.
展望未来 :项目不知道怎么样,但是生活回归正轨,备战四级考试,锻炼身体

其实写写这东西还挺好

相关推荐
诗书画唱4 分钟前
【前端面试题】JavaScript 核心知识点解析(第二十二题到第六十一题)
开发语言·前端·javascript
冬天vs不冷5 分钟前
Java基础(九):Object核心类深度剖析
java·开发语言·python
TS的美梦6 分钟前
【1:1复刻R版】python版火山图函数一键出图
开发语言·python·r语言·scanpy·火山图
悟空聊架构24 分钟前
我的网站被攻击了,被干掉了 120G 流量,还在持续攻击中...
java·前端·架构
陈天伟教授1 小时前
(二)Python + 地球信息科学与技术 (GeoICT)=?
开发语言·python
Dajiaonew1 小时前
Spring AI RAG 检索增强 应用
java·人工智能·spring·ai·langchain
IT古董4 小时前
第四章:大模型(LLM)】06.langchain原理-(3)LangChain Prompt 用法
java·人工智能·python
轻抚酸~8 小时前
小迪23年-32~40——java简单回顾
java·web安全
Sirius Wu9 小时前
Maven环境如何正确配置
java·maven
七七&55610 小时前
2024年08月13日 Go生态洞察:Go 1.23 发布与全面深度解读
开发语言·网络·golang