SpringMVC起步--MVC基本概念

MVC----写给自己的备忘
    Modle--View--Controller
    Model-->模型层,业务数据的信息表示,关注支撑业务的信息构成,通常是多个业务实体的组合。
    View-->视图层,为用户提供UI,重点关注数据的呈现。
    Controller-->控制层,调用业务逻辑产生合适数据(Model),传递数据给视图层用于呈现。
    实际上是一种我们开发web应用程序的通用架构方式。
    其核心思想就是业务数据抽取同业务数据呈现相分离。
    所以我们说MVC是一种架构模式,他使得我们的程序分层,分工合作,既相互独立,又协同工作。

SpringMVC起步--MVC基本概念_第1张图片

  1. 下面我们看看springmvc有哪些东西

DispatcherServlet

    前端控制器,前端(浏览器端)用户的请求经过DispatcherServlet进行分发到达合适的Controller,生成我们所需要的业务数据Model,Model再通过DispatcherServlet进行传递,传递给View,来进行最终的页面呈现。

Controller

    调用业务逻辑,生成Model。

HandlerAdapter

    Handler是DispatcherServlet调用Controller的一种中间过度对象。
    Handler是在DispatcherServlet内部使用的一个类,其实就是Controller的一个表现形式。在SpringMVC中并没有一个interface叫做Controller,但是有一个annotation,就是为了我们识别一个Controller而引入的。在DispatcherServlet中,其实最终调用的Controller是以Handler形式出现的。
    HandlerAdapter其实是一个适配器模式,就是将各种不同类型的Handler适配成我们DispatcherServlet可以使用的Handler,这样我们的DispatcherServlet就可以很轻松的调用我们的控制器。

HandlerInterceptor

    是一个拦截器的意思,其实就是在我们需要被拦截对象的两侧加入一些料。
    如果你配置了这个类,并提供了实现,就可以在我们真正调用Controller之前、之后以及最终在我们Model发送到页面或者view即完成了呈现之后做很多事情。

HandlerMapping

    Handler是DispatcherServlet调用Controller的一种中间过度对象。
    Mapping是DispatcherServlet,我们的前端控制器与Controller之间映射关系的一种类。
    HandlerMapping就是告诉我们的DispatcherServlet这个请求到来之后由哪一个Controller来响应我们的这个请求。

HandlerEcecutionChain

    执行链条
    preHandle-->Controller Method-->postHandle-->afterCompletion

ModleAndView

    Model的具体表现,也可以使用Map类来实现Model的功能,DispatcherServlet会将Model或者Map统统转换为ModelAndView

ViewResolver

    视图解析器,他会告诉DispatcherServlet你需要用哪一个视图来进行视图的呈现,他的作用就是根据page找出我们需要的视图对象。比图jstl,jsp等等。

View

    负责呈现页面。
  • 在通过张图来看下他们之间的关系
    • SpringMVC起步--MVC基本概念_第2张图片

你可能感兴趣的:(SpringMvc)