阿里Java二面:说说Spring MVC执行流程及原理?这样聊能吊打面试官

面试找虐

博主之前每次去面试必问的问题:“讲一下spring mvc的执行流程以及常用组件的作用”;
记得第一次和面试官说了大概的流程是这样的:“服务器收到一个请求后会先去HandlerMapping中匹配url,找到url之后用HandlerAdapter 适配器去执行这个控制器(controller层),执行完之后返回一个modelAndView,然后通过视图解析器ViewResolver解析后得到一个view对象,这个view就是渲染好的jsp页面,返回给前端页面”;
(等了一会看着我)面试官:“   就这样。。。没啦?”;
懵逼的我:“嗯,没了”;
面试官:“那你回家等消息吧!”;

其实吧,博主说得没错,只是说少了,不够详细,如果是面试初级java开发,这样讲是没问题的,妥妥地给过了,但我是谁啊,我可是要成为架构师的人啊! 回答出这种答案,老板怎么放心把项目交给我呢。于是啊,吸取了教训,我就在家潜心研究,经过七七四十九天的研究、九九八十一次的练习,终于让我掌握了这门核心技术;

什么是Spring mvc

SpringMVC是一种web层mvc框架;是spring的一个模块,拥有spring的特性,通过策略接口,Spring框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring的MVC框架主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。

都知道叫做spring mvc,mvc是什么东东呢?其实就是三层架构, 在过去架构都是两层的,就是浏览器通过servlet后直接访问JSP页面,也就是说所有的java代码都是在jsp页面里面写的,就连访问数据库也是在jsp页面,小型项目这样开发没什么问题,因为快嘛,但是大型项目是需要迭代的,是需要增加功能和模块的,你这么写的话,我后期维护起来很麻烦啊;而且java代码和html标签混搭,这样代码的可读性也不高;所以就衍生出了MVC三层架构

  • M : 表示mode,翻译成中文叫做模型,对应数据库;
  • V : 表示View,翻译为中文叫做视图,对应前端的页面,比如jsp
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值