博客源码下载:戳我一下
SpringMVC学习笔记汇总:SpringMVC学习笔记汇总
一、SpringMVC
是什么
springmvc
是spring
框架的一个模块,springmvc
和spring
无需通过中间整合层进行整合。
springmvc
是一个基于mvc的web框架。
二、mvc在b/s系统 下的应用
mvc是一个设计模式,mvc在b/s系统 下的应用:
1、用户发起request
请求至控制器(Controller
),控制接收用户请求的数据,委托给模型进行处理
2、控制器通过模型(Model
)处理数据并得到处理结果,模型通常是指业务逻辑
3、模型处理结果返回给控制器
4、控制器将模型数据在视图(View
)中展示,web中模型无法将数据直接在视图上显示,需要通过控制器完成。如果在C/S应用中模型是可以将数据在视图中展示的。
5、控制器将视图response
响应给用户,通过视图展示给用户要的数据或处理结果。
三、SpringMVC
框架
第一步:发起请求到前端控制器(DispatcherServlet
)
第二步:前端控制器请求HandlerMapping
查找 Handler
,可以根据xml
配置、注解进行查找
第三步:处理器映射器HandlerMapping
向前端控制器返回Handler
第四步:前端控制器调用处理器适配器去执行Handler
第五步:处理器适配器去执行Handler
第六步:Handler
执行完成给适配器返回ModelAndView
第七步:处理器适配器向前端控制器返回ModelAndView
,ModelAndView
是springmvc
框架的一个底层对象,包括Model
和View
第八步:前端控制器请求视图解析器去进行视图解析,根据逻辑视图名解析成真正的视图(jsp)
第九步:视图解析器向前端控制器返回View
第十步:前端控制器进行视图渲染,视图渲染将模型数据(在ModelAndView
对象中)填充到request
域
第十一步:前端控制器向用户响应结果
四、组件说明
1、前端控制器DispatcherServlet
(不需要程序员开发)
作用:接收请求,响应结果,相当于转发器,中央处理器。
有了DispatcherServlet
减少了其它组件之间的耦合度。
2、处理器映射器HandlerMapping(
不需要程序员开发)
作用:根据请求的url
查找Handler
3、处理器适配器HandlerAdapter
作用:按照特定规则(HandlerAdapter
要求的规则)去执行Handler
4、处理器Handler
(需要程序员开发)
注意:编写Handler
时按照HandlerAdapter
的要求去做,这样适配器才可以去正确执行Handler
5、视图解析器View resolver
(不需要程序员开发)
作用:进行视图解析,根据逻辑视图名解析成真正的视图
6、视图View
(需要程序员开发jsp)
View
是一个接口,实现类支持不同的View
类型(jsp、freemarker、pdf...
)