一、SpringMvc原理介绍
Web请求流程图:
图片转自于:https://www.cnblogs.com/xiaoxi/p/6164383.html
1.Web请求分析
由上图我们可以看出:
(1)DIspatchServlet——前端控制器(由框架提供)
- 用户发送请求时,接受请求,并将请求发送至映射处理器
- 在后端进行业务逻辑处理后,将ModelAndView返回,前端控制器进行视图解析,视图渲染最后返回展示给用户的视图
(2)HandleMapper——处理器映射器(由框架提供)
接收前端控制器发送的url请求,去寻找适应的处理器。在映射之前,之中,之后都可以通过处理拦截器HandleInterceptor进 行拦截。
(3)Handle——处理器(程序员开发)
处理器主要是由业务代码组成,需要程序员进行自主开发。处理器映射到项目中即为Controller包
(4)HandlerAdapter——处理适配器(由框架提供)
按照特定规则(HandlerAdapter要求的规则)去执行Handler
(5)ViewResolver——视图解析器(由框架提供)
进行视图解析,根据逻辑视图名解析成真正的视图(view),首先根据逻辑视图名解析成物理视图名即具体的页面地址,再生 成View视图对象,最后对View进行渲染将处理结果通过页面展示给用户。
2.SpringMvc与web请求
(1)M-Model 模型:
完成业务逻辑:由javaBean构成,service+dao+entity,
(2)V-View 视图:
做界面的展示 jsp,html……
(3)C-Controller 控制器:
接收请求—>调用模型—>根据结果派发页面
二、Springboot中的SpringMvc