spring mvc 基本概念

静态:

DispatcherServlet :(mvc的前端控制器)(frontcontroller)


前端页面的请求通过DispatcherServlet 对请求进行分发给一个合适的controller来生产我们的业务数据model,我们的model在通过

DispatchServlet传递给view呈现最后的页面呈现

controller(mvc中的c)

HandlerAdapter:

    DispatcherServlet内部使用的的一个类,是我们controller的一个表现形式,springmvc之中没有一个interface

叫做controller,而是有一个annotation是一个标签(),这个标签是我们为了识别一个controller而

引入的,没有一个controller的类似接口的东西,那么DispatchServlet如何知道调用控制中心,也就是handler,controller在DispatcherServlet中就是就是以Handler的形式出现的,HandlerAdapter

,它就是java中的适配器模式,专门将各种不同的Handler适配成我们DispatcherServlet可以使用的handler,这样就可以很轻松的调用控制器;

HandlerInterceptor:(拦截器)

spring mvc 基本概念_第1张图片

HandlerMapping

  前端控制器(DispatcherServlet)与我们controller之间一种映射关系的类,就是告诉我们前端传来的请求用哪一个controller,他工作完之后给DispatcherServlet一个HandlerAdapter,里面就是controller的实例,和包裹着它的HandlernIntercepter(拦截器,就是调用前后加的料),构成一个执行链条往下走;

HandlerExecutionChai:

      他就是HandlerMapping工作完给的HandlerAdapter

下面是调用逻辑

spring mvc 基本概念_第2张图片


ModelAndView: (m)

这是对model的一种呈现形式,java中的Map,model都是m的形式,但是前端控制器DispatcherServlet都会统统将他们转换成ModelAndView

ViewResolver:视图解析器,它会告诉DispatcherServlet,你需要用哪种视图来做视图的呈现,找出那一个视图对象

比如jsp 等

View:就是jsp等页面

springmvc图解原理

spring mvc 基本概念_第3张图片

     

spring mvc 基本概念_第4张图片

   request浏览器端过来,首先到达DispatcherServlet,所有他都拦截到,然后通过HandlerMapping 去找Controller

通过annatation告诉handlerMapping要找的controller和Handlerinterceptor,把他们形成了一个HandlerExcutionChain

一个执行链条,作为一个handler 或HandlerAdapter返回给了我们的DispatServlet,在去调用一般化的处理器,Handler或HandlerAdapter生成我们的模型在返还给DispatcherServlet ,他再调用视图解析器,返回视图对象view,然后

我们的modeland view 传递数据给view完成我们的试图呈现;

[黑色不管,斜体可写可不写,粗体是自己需要写的,剩下蓝色配置就行]

   



你可能感兴趣的:(springmvc)