SpringMVC 原理 (面试必备)

一、简介

SpringMVC是Spring框架的一个子模块,类似于AOP,IOC等模块。也是通常所说的那层薄薄的Web层,也就是MVC架构中的C(Controller),负责接收分发用户请求。

二、原理


详细解释这幅图。

1、用户发起请求,一般是HTTP请求,带有URL和参数。

2、DispatcherServlet的匹配的URL与请求的URL相匹配,DispatcherServlet接收请求。

3、把URL提交给处理器映射器(HandlerMapping),处理器映射器返回一个处理器执行链,执行链前面是一些拦截器(HandlerInterceptor),最后才是程序员编写的Handler,即XXXController。

4、调用处理器适配器去执行Handler。

5、HandlerAdapter执行Handler的处理方法。

6、Handler处理完请求后,返回ModelAndView。

7、HandlerAdapter返回ModelAndView给DispatcherServlet。

8、DispatcherServlet提取出视图名,交给视图解析器,视图解析器解析出JSP全路径名,如/WEB-INF/XXX.jsp。

9、返回视图名交给DispatcherServlet。

10、这时候DispatcherServlet携带Model中的参数请求转发(forward)给一个JSP文件,因为JSP在编译后生成的是Servlet,因此要forward过去,然后Servlet根据Model中的数据,对页面进行渲染,即生成HTML格式的response。

11、将response返回给DispatcherServlet。

12、响应请求给用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值