SpringMVC起步--MVC基本概念

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

前端控制器

  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

    负责呈现页面。
  • 在通过张图来看下他们之间的关系
    • 这里写图片描述
原创粉丝点击