SpringMVC基础(面试必问)

文章目录

  • 前言
  • 一、SpringMVC
  • 二、SpringMVC的核心组件
    • 1.DispatcherServlet
    • 2.HandlerMapping
    • 3.HandlerAdapter
    • 4.Handler
    • 5.ViewResolver
  • 三.SpringMVC
    • 3.1工作原理图


前言

本文章将简单介绍SpringMVC的工作流程


一、SpringMVC

MVC模式是模型(Model)视图(view)控制器(controller)的简写,其核心思想是通过请求处理控制业务逻辑数据封装数据显示等流程节点分离的思想来组织代码。
SpringMVC基础(面试必问)_第1张图片
所以,MVC是一种设计模式,而SpringMVC是一款基于MVC设计模式思想实现的MVC框架,属于Spring技术栈的一部分,SpringMVC可以帮助我们进行更简洁的Web层开发,并且它天生与Spring框架集成,更利于架构的设计与搭建。

二、SpringMVC的核心组件

1.DispatcherServlet

名称与用途:核心处理器,负责统一接收请求,将请求分发至不同的控制器,并负责客户端响应

2.HandlerMapping

名称与用途:处理器映射器,根据uri去匹配查找能处理的Handler,并会将请求涉及到的拦截器和Handler一起封装。

3.HandlerAdapter

名称与用途:处理器适配器,根据HandlerMapping找到的Handler,适配执行对应的Handler

4.Handler

名称与用途:请求处理器,处理实际请求的处理器

5.ViewResolver

名称与用途:视图解析器,根据Handler返回的逻辑视图名称,解析并渲染真正的视图文件,并传递给DisptcherServlet响应至客户端

三.SpringMVC

3.1工作原理图

SpringMVC基础(面试必问)_第2张图片

  1. 客户端(浏览器)发送请求,统一由DispatcherServlet拦截处理请求
  2. DispatcherServlet根据请求信息调用HandlerMapping。HandlerMapping根据uri去匹配查找能处理的Handler(我们定义的Controller控制器),并会将请求涉及到的拦截器和Handler一起封装
  3. DispatcherServlet调用HandlerAdapter适配执行Handler
  4. Handler完成对于用户的请求的处理后,会返回一个ModelAndView模型视图对象给DispatcherServletModelAndView中包含了数据模型以及相应的视图信息,Model是返回的数据对象,ViewView视图的逻辑名称
  5. ViewResolver会根据逻辑View名称查找并解析实际的View视图文件,并根据DispatcherServlet返回的Model数据模型传给View视图文件,进行渲染执行,产生响应结果。
  6. DispatcherServlet负责将响应结果,输出至客户端浏览器。

你可能感兴趣的:(面试,职场和发展)