springmvc的简介与原理

springmvc的简介与原理

1.springmvc是什么

    springmvc全称是spring web mvc,是spring框架一部分,是一个mvc的框架,和struts2一样是一个表现层框架。

springmvc的简介与原理_第1张图片

2.springmvc架构原理

2.1.mvc在b/s系统中应用

  • mvc:是一种设计模式。设计模式理解为最佳实践。

  • b/s:早期大部分系统是c/s结构,是一种客户/服务器架构,和b/s(客户/服务器架构),b/s结构中客户端指的是浏览器。
    web系统是一种b/s系统架构。

springmvc的简介与原理_第2张图片

2.2.springmvc框架原理

springmvc的简介与原理_第3张图片

  • 1、用户发送请求至前端控制器DispatcherServlet
  • 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器查找Handler。
  • 3、处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。
  • 4、DispatcherServlet通过HandlerAdapter处理器适配器调用处理器
  • 5、HandlerAdapter调用处理器Handler
  • 6、Handler执行完成返回ModelAndView
  • 7、HandlerAdapter将Handler执行结果ModelAndView返回给DispatcherServlet
  • 8、DispatcherServlet将ModelAndView传给ViewReslover视图解析器,ViewReslover根据逻辑视图名解析View
  • 9、ViewReslover返回View
  • 10、DispatcherServlet对View进行渲染视图(即将模型数据填充至request域)。
  • 11、DispatcherServlet响应用户

DispatcherServlet前端控制器(springmvc框架提供)
作用:接收请求,响应结果
有了前端控制器减少各各组件之间的耦合性,前端控制器相关于中央调度器。

HandlerMapping 处理器映射器(springmvc框架提供)
作用:根据url查找Handler,比如:根据xml配置、注解方式查找Handler

**HandlerAdapter处理器适配器(springmvc框架提供)
作用:执行Handler
不同类型的Handler有不同的HandlerAdapter,好处可以通过扩展HandlerAdapter支持更多类型的Handler

Handler处理器(由程序员开发)
作用:业务处理
实现开发中又称为controller即后端控制器
Handler的开发按照HandlerAdapter的接口规则去开发。
Handler处理后的结果是ModelAndView,是springmvc的底层对象,包括 Model和view两个部分。
view中只包括一个逻辑视图名(为了方便开发起一个简单的视图名称)。

ViewReslover视图解析(springmvc框架提供)
作用:根据逻辑视图名创建一个View对象(包括真实视图物理地址)
针对不同类型的view有不同类型的ViewReslover,常用的有jsp视图解析器即jstlView

View视图(由程序员开发jsp页面)
作用:将模型数据填充进来(将model数据填充到request域)显示给用户
view是一个接口,实现类包括:jstlView、freemarkerView,pdfView…

你可能感兴趣的:(springmvc)