[Java面试]二:常见面试题之框架篇Spring MVC

我的博客首页: 我的GitHub首页:


  1. 什么是Spring MVC 1Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架。使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型。框架的目的就是帮助我们简化开发。
  2. SpringMVC的工作流程(简洁版本) 用户提交请求到前端控制器dispatcherServlet 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller DispatcherServlet将请求提交到Controller Controller进行业务逻辑处理后,返回ModelAndView对象,该对象本身就包含了视图对象信息 DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView对象指定的视图对象 视图负责将结果显示到客户端
  3. SpringMVC的优点 是基于组件技术的.全部的应用对象,无论控制器和视图,还是业务对象之类的都是 java组件.并且和Spring提供的其他基础结构紧密集成 与Spring框架天生整合,无框架兼容问题 与Struts2相比安全性高 配置量小、开发效率高
  4. SpringMVC与Struts2的区别 springmvc的入口是一个servlet即前端控制器,而struts2入口是一个filter过虑器。 springmvc是基于方法开发,传递参数是通过方法形参,可以设计为单例或多例(建议单例),struts2是基于类开发,传递参数是通过类的属性,只能设计为多例。 Struts采用值栈存储请求和响应的数据,通过OGNL存取数据。 springmvc通过参数解析器是将request对象内容进行解析成方法形参,将响应数据和页面封装成ModelAndView对象,最后又将模型数据通过request对象传输到页面。 Jsp视图解析器默认使用jstl。

经验分享 程序员 微信小程序 职场和发展