SpringMVC的底层工作原理?

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

2.DispatcherServlet 收到请求调用 HandlerMapping 处理器映射器

3.HandlerMapping找到具体的处理器(可以根据 xml 配置、注解进行查找),生成处理器处理器拦截器(如果有则生成)一并返回给DispatcherServlet.

  1. DispatcherServlet 调用 HandlerAdapter 处理器适配器

5.HandlerAdapter 经过适配调用后端控制器(Controller)

6.Controller 执行完成返回 ModelAndView。

7.HandlerAdapter 将Controller 执行结果 ModelAndView 返回给 DispatcherServlet.

  1. DispatcherServlet 将ModelAndView 传给 ViewReslover 视图解析器。

9.ViewReslover 解析后返回具体 View。

10.DispatcherServlet 根据 View 进行渲染视图(即将模型数据填充至视图中)。

  1. DispatcherServlet 响应用户。
相关推荐
Monodye8 分钟前
【Java】网络编程:TCP_IP协议详解(IP协议数据报文及如何解决IPv4不够的状况)
java·网络·数据结构·算法·系统架构
一丝晨光14 分钟前
逻辑运算符
java·c++·python·kotlin·c#·c·逻辑运算符
无名指的等待71238 分钟前
SpringBoot中使用ElasticSearch
java·spring boot·后端
Tatakai251 小时前
Mybatis Plus分页查询返回total为0问题
java·spring·bug·mybatis
武子康1 小时前
大数据-133 - ClickHouse 基础概述 全面了解
java·大数据·分布式·clickhouse·flink·spark
.生产的驴1 小时前
SpringBoot 消息队列RabbitMQ 消费者确认机制 失败重试机制
java·spring boot·分布式·后端·rabbitmq·java-rabbitmq
Code哈哈笑1 小时前
【C++ 学习】多态的基础和原理(10)
java·c++·学习
chushiyunen2 小时前
redisController工具类
java
A_cot2 小时前
Redis 的三个并发问题及解决方案(面试题)
java·开发语言·数据库·redis·mybatis
AskHarries2 小时前
Spring Boot利用dag加速Spring beans初始化
java·spring boot·后端