SpringMVC基础学习
1.springMVC是什么?
1.1 springMVC 是spring 框架的一个模块,所以springMVC和spring无需通过中间整合层进行整合
1.2 springMVC 是一个基于 MVC 的 web 框架
1.3 什么是 mvc?
1.3.1 mvc是一种设计模式
1.3.2 mvc在 b/s 系统下的应用 如图:
1.3.3 springmvc框架:
执行步骤:
第一步:发起请求到前端控制器(DispatcherServlet)
第二步:前端控制器请求 HandlerMapping 查找 Handler
可以根据XML配置,注解进行查找,根据url来查找对应的Handler
第三步:处理器映射器 HandlerMapping 向前端控制器返回一个Handler
第四部: 前端控制器调用处理适配器去执行Handler
第五步: 处理器适配器去执行Handler; 执行Handler 便于扩展 不同的Handler 由不同的适配器执行
第六步: Handler执行完成给适配器返回ModelAndView
第七步: 处理器适配器向前端控制器返回ModelAndView
ModelAndView是 springmvc 框架的一个底层对象 包括 Model 和 View
第八步: 前段控制器请求视图解析器去进行视图解析
根据逻辑视图名解析成真正的视图(jsp)
第九步: 视图解析器向前端控制器返回View
第十步 前端控制器进行视图渲染
视图渲染将模型数据(在 ModelAndView 对象中) 填充到request域
第十一步 前端控制器向用户响应结果
组件:
1.前端控制器 DispatcherServlet
作用:接收请求 ,响应结果,相当于转发器
减少了其它组件之间的耦合度
2.处理器映射器 HandlerMapping
作用:根据请求的url查找Handler
3.处理器适配器 HandlerAdapter
作用:根据特定的规则(HandlerAdapter 的规则) 来执行 Handler
4.处理器 Handler(需要程序员开发)
注意:编写Handler时按照HandlerAdapter的要求去做,这样适配器才能正确的去执行Handler
5.视图解析器 View resolver
作用:进行视图解析,根据逻辑视图名解析成真正的视图
6.视图 View (需要程序员开发)
View是一个接口,实现类支持不同的View类型(jsp,Pdf,freemarker...)