springmvc 第一天 springmvc的基础知识前端
课程安排:程序员
第一天:springmvc的基础知识web
什么是springmvc?spring
springmvc框架原理(掌握)json
前端控制器、处理器映射器、处理器适配器、视图解析器后端
springmvc入门程序设计模式
目的:对前端控制器、处理器映射器、处理器适配器、视图解析器学习mybatis
非注解的处理器映射器、处理器适配器架构
注解的处理器映射器、处理器适配器(掌握)mvc
springmvc和mybatis整合(掌握)
springmvc注解开发:(掌握)
经常使用的注解学习
参数绑定(简单类型、pojo、集合类型(次日讲))
自定义参数绑定(掌握)
springmvc和struts2区别
次日:springmvc的高级应用
参数绑定(集合类型)
数据回显
上传图片
json数据交互
RESTful支持
拦截器
springmvc是spring框架的一个模块,springmvc和spring无需经过中间整合层进行整合。
springmvc是一个基于mvc的web框架。
mvc是一个设计模式,mvc在b/s系统 下的应用:
一、 用户发起request请求至控制器(Controller)
控制器接收用户请求的数据,委托给模型进行处理
二、 控制器经过模型(Model)处理数据并获得处理结果
模型一般是指业务逻辑
三、 模型处理结果返回给控制器
四、 控制器将模型数据在视图(View)中展现
web中模型没法将数据直接在视图上显示,须要经过控制器完成。若是在C/S应用中模型是能够将数据在视图中展现的。
五、 控制器将视图response响应给用户
经过视图展现给用户要的数据或处理结果。
第一步:发起请求到前端控制器(DispatcherServlet)
第二步:前端控制器请求HandlerMapping查找 Handler
能够根据xml配置、注解进行查找
第三步:处理器映射器HandlerMapping向前端控制器返回Handler
第四步:前端控制器调用处理器适配器去执行Handler
第五步:处理器适配器去执行Handler
第六步:Handler执行完成给适配器返回ModelAndView
第七步:处理器适配器向前端控制器返回ModelAndView
ModelAndView是springmvc框架的一个底层对象,包括 Model和view
第八步:前端控制器请求视图解析器去进行视图解析
根据逻辑视图名解析成真正的视图(jsp)
第九步:视图解析器向前端控制器返回View
第十步:前端控制器进行视图渲染
视图渲染将模型数据(在ModelAndView对象中)填充到request域
第十一步:前端控制器向用户响应结果
一、 用户发送请求至前端控制器DispatcherServlet
二、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。
三、 处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(若是有则生成)一并返回给DispatcherServlet。
四、 DispatcherServlet经过HandlerAdapter处理器适配器调用处理器
五、 执行处理器(Controller,也叫后端控制器)。
六、 Controller执行完成返回ModelAndView
七、 HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet
八、 DispatcherServlet将ModelAndView传给ViewReslover视图解析器
九、 ViewReslover解析后返回具体View
十、 DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中)。
十一、 DispatcherServlet响应用户
一、前端控制器DispatcherServlet(不须要程序员开发)
做用接收请求,响应结果,至关于转发器,中央处理器。
有了DispatcherServlet减小了其它组件之间的耦合度。
二、处理器映射器HandlerMapping(不须要程序员开发)
做用:根据请求的url查找Handler
三、处理器适配器HandlerAdapter
做用:按照特定规则(HandlerAdapter要求的规则)去执行Handler
四、处理器Handler(须要程序员开发)
注意:编写Handler时按照HandlerAdapter的要求去作,这样适配器才能够去正确执行Handler
五、视图解析器View resolver(不须要程序员开发)
做用:进行视图解析,根据逻辑视图名解析成真正的视图(view)
六、视图View(须要程序员开发jsp)
View是一个接口,实现类支持不一样的View类型(jsp、freemarker、pdf...)
如下组件一般使用框架提供实现:
u DispatcherServlet:前端控制器
用户请求到达前端控制器,它就至关于mvc模式中的c,dispatcherServlet是整个流程控制的中心,由它调用其它组件处理用户的请求,dispatcherServlet的存在下降了组件之间的耦合性。
u HandlerMapping:处理器映射器
HandlerMapping负责根据用户请求找到Handler即处理器,springmvc提供了不一样的映射器实现不一样的映射方式,例如:配置文件方式,实现接口方式,注解方式等。
u Handler:处理器
Handler 是继DispatcherServlet前端控制器的后端控制器,在DispatcherServlet的控制下Handler对具体的用户请求进行处理。
因为Handler涉及到具体的用户业务请求,因此通常状况须要程序员根据业务需求开发Handler。
u HandlAdapter:处理器适配器
经过HandlerAdapter对处理器进行执行,这是适配器模式的应用,经过扩展适配器能够对更多类型的处理器进行执行。
u View Resolver:视图解析器
View Resolver负责将处理结果生成View视图,View Resolver首先根据逻辑视图名解析成物理视图名即具体的页面地址,再生成View视图对象,最后对View进行渲染将处理结果经过页面展现给用户。 springmvc框架提供了不少的View视图类型,包括:jstlView、freemarkerView、pdfView等。
通常状况下须要经过页面标签或页面模版技术将模型数据经过页面展现给用户,须要由程序员根据业务需求开发具体的页面。