一. 知识储备
1.1 Spring mvc是什么
- 一种轻量级的、基于MVC的web层应用框架。偏前端而不是基于业务逻辑层。是Spring框架的一个后续产品。
- Spring框架结构图如下,最右上角的就是Springmvc框架,是新加进去的:
1.2 Spring mvc常用的主要组件
| 组件 | 解释 |
|---|---|
| DispatcherServlet | 前端控制器,主要用于将浏览器传来的请求转发给相应的Servlet去处理 |
| Controller | 处理器,或者叫页面控制器。做的是MVC中C的事情。但是控制逻辑转移到了前端控制器了,用于对请求进行处理 |
| HandlerMapping | 请求映射到处理器,找谁来处理。如果映射成功返回一个HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象,多个HandlerInterceptor(拦截器对象) |
| View Resolver | 视图解析器,找谁来处理返回的页面。把逻辑视图转换为具体的View,进行这种策略模式,很容易更换其他视图技术。如InternalResourceViewResolver,将逻辑视图名映射为JSP视图。 |
| LocalResolver | 本地化、国际化 |
| MultipartResolver | 文件上传解析器 |
| HandlerExceptionResolver | 异常处理器 |
Spring mvc将web层进行了职责解耦,基于请求-响应模型