Spring MVC常见面试题总结

2021-10-15 16:24:54 浏览数 (1)

Spring MVC是什么

Spring MVC是一个基于MVC设计模式的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合 M:Model,模型,JavaBean。完成具体的业务操作,如:查询数据库,封装对象 V:View,视图,JSP。展示数据 C:Controller,控制器,Servlet。获取用户的输入,调用模型,将数据交给视图进行展示

Spring MVC常用注解

  • @RequestMapping:用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径
  • @RequestParam:后台控制层获取参数,用于获取传入参数的值
  • @RequestBody:注解实现接收http请求的json数据,将json转换为java对象。
  • @ResponseBody:作用于方法上,可以将整个返回结果以某种格式返回,如json或xml格式

Spring MVC里面拦截器是怎么写的

  • 一种是实现HandlerInterceptor接口
  • 另外一种是继承适配器类

Spring MVC如何开启注解扫描

SpringMVC 我们在项目中一般会在 springmvc.xml中通过开启< mvc:annotation-driven >来实现注解处理器和适配器的开启。

Spring MVC的执行流程

  1. 用户发送请求至前端控制器DispatcherServlet;
  2. 前端控制器请求处理器映射器HandlerMapping查找具体的处理器Handler;(可以根据xml配置、注解进行查找)
  3. 生成处理器对象及处理器拦截器(如果有则生成),返回给前端控制器;
  4. 前端控制器调用处理器适配器HandlerAdapter去执行这个处理器;
  5. 处理器适配器经过适配调用具体的处理器进行处理业务逻辑;
  6. 这个具体的处理器执行完成返回模型和视图ModelAndView;
  7. 处理器适配器将执行结果ModelAndView返回给前端控制器;
  8. 前端控制器将ModelAndView传给视图解析器进行解析;(根据逻辑视图名解析成真正的视图(jsp))
  9. 视图解析器解析后返回View;
  10. 前端控制器对View进行渲染;(视图渲染将模型数据(在ModelAndView对象中)填充到request域)
  11. 前端控制器向用户响应结果。

我的博客即将同步至腾讯云 社区,邀请大家一同入驻:腾讯云 社区

0 人点赞