【Java面试】2023精选Java面试题,说说Spring MVC的执行流程?

一个工作2年的粉丝在面试的时候,面试官要求他说Spring MVC的执行流程。

他没回答上来,错过了这个offer。

这个问题在我之前整理的大厂面试指南里面,有标准的回答,大家可以在文章尾端扫二维码领取。

问题解析

Spring MVC的执行流程,一个面试频率超级高的问题,但是缺难倒了无数的程序员。

这个问题的考察范围主要是3~5年,甚至5年以上都会问到。和它同类型的问题还有Bean的加载过程、IOC的原理等。

由于Spring MVC是基于Jsp/Servlet之上做的封装,并为开发人员提供了MVC的分层设计以及更加友好的开发模型。

所以我认为大家都应该去把Spring MVC的整个执行流程梳理一遍。

问题答案

Spring MVC的工作流程可以分为几个步骤

  1. 用户发起请求,请求先被Servlet拦截转发给Spring MVC框架

  2. Spring MVC里面的DispatcherSerlvet核心控制器,会接收到请求并转发给HandlerMapping

  3. HandlerMapping负责解析请求,根据请求信息和配置信息找到匹配的Controller类,不过这里如果有配置拦截器,就会按照顺序执行拦截器里面的preHandle方法

  4. 找到匹配的Controller以后,把请求参数传递给Controller里面的方法

  5. Controller中的方法执行完以后,会返回一个ModeAndView,这里面会包括视图名称和需要传递给视图的模型数据

  6. 视图解析器根据名称找到视图,然后把数据模型填充到视图里面再渲染成Html内容返回给客户端

 

 总结

好了,今天的分享就到这里结束了

如果喜欢我的作品,记得点赞、收藏、关注

另外,我将所有Java面试系列制作成了30W字的面试宝典。

【领取面试文档可以点击文章底部名片,无套路免费赠送给大家!】

需要高手面试文档面试文档的小伙伴可以扫描下方二维码
↓↓↓↓↓↓↓↓↓↓↓↓↓

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跟着Mic学架构

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值