SpringMVC基础

46 阅读2分钟

SpringMVC基础

什么是MVC?

MVC是模型(Model)、视图(View)和控制器(Controller)的简写,其核心思想是通过将业务逻辑、数据、显示分离来组织代码。

  • 模型(Model):用于封装业务逻辑处理。
  • 视图(View):用于数据展现和操作界面。
  • 控制器(Controller):负责转发请求,对请求进行处理。

MVC是一种设计模式,Spring MVC是一款很优秀的MVC框架。Spring MVC可以帮助我们进行更简洁的Web层的开发,并且它天生与Spring框架集成。Spring MVC下我们一般把后端项目分为Service层(处理层)、Dao层(数据库操作)、Entity层(实体类)、Controller层(控制层,返回数据给前台页面)。

SpringMVC的核心组件有哪些?

  • DispatcherServlet:前端控制器,负责接收请求、分发,并给予客户端响应。
  • HandlerMapping:处理器映射器,根据URI去匹配查找能处理的Handler,并会将请求涉及到的拦截器和Handler一起封装。
  • HandlerAdapter:处理器适配器,根据HandlerMapping找到的Handler,适配执行对应的Handler(调用具体的方法对用户发来的请求进行处理)。
  • Handler:请求处理器,处理实际请求的处理器。
  • ViewResolver:视图解析器,根据Handler返回的逻辑视图/视图,解析并渲染真正的视图,并传递给DispatcherServlet响应客户端。

SpringMVC工作原理

SpringMVC工作流程

具体流程如下:

(1)客户端发起HTTP请求:客户端将请求提交到DispatcherServlet

(2)寻找处理器:由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理该请求的Controller

(3)调用处理器:DispatcherServlet将请求提交到Controller

(4)调用业务处理逻辑并返回结果:Controller在调用业务处理逻辑后,返回ModelAndView

(5)处理视图映射并返回模型:DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图。

(6)HTTP响应:视图负责将结果在客户端浏览器上渲染和展示。