SpringMVC的定义

醉酒当歌 提交于 2019-11-29 23:44:12

1.什么是springmvc?怎么理解

它是一个基于java的实现了mvc设计模式的请求请求驱动类型的轻量级web框架,通过model、view、controller分离,将web层进行职责解耦,把复杂的web引用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。

2.流程

(1)用户发送请求到前置控制器DispatcherServlet

(2)DispactcherServlet收到请求后,调用HandlerMapping处理器映射器,请求获取Handle

(3)处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet

(4)DispacherServlet调用HandlerAdapter处理器适配器

(5)HandlerAdapter经过适配调用具体的处理器(Handler,也叫后端控制器)

(6)Handler执行完成返回ModelAndView

(7)HandlerAdapter将Handler执行结果ModelAndView返回给DisptcherServlet()

(8)DispatcerServlet将传过来的ModelAndView传给ViewResolver视图解析器进行解析

(9)ViewResolver解析后返回具体的view

(10)DispatcherServlet对view进行渲染视图(即将模型数据填充到视图中)

(11)DispatcherServlet响应客户

3.优点

(1)支持各种视图技术,而不仅仅局限于jsp

(2)与spring框架集成(如ioc容器、aop等)

(3)清晰的角色分配:

  1. 前置控制器                   DispatcherServlet  
  2. 处理器映射器               HandlerMapping
  3. 处理器适配器               HandlerAdapter
  4. 视图解析器                  viewResolver     根据视图逻辑名解析成真正的视图

(4)支持各种请求资源的映射策略

 

理解:

  1. handler就是类,就是处理器,就是各种方法的集合。
  2. view就是视图,jsp、html等
  3. DispatcherServlet相当于一个大型的中转站,所有的请求会经过它的转发,也叫分发器
  4. 对处理器适配器有了新的理解,字面意思是找到适合的处理器,其实是找到执行方法。

理解的有什么偏差?望各位博主指出,谢谢!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!