zoukankan      html  css  js  c++  java
  • Spring MVC 入门(一)

    什么是 Spring MVC

      学习某一样东西之前,我们一定要大致知道这个东西是什么,能干什么,为什么要用它。

      Spring MVC 是一个开源平台,一个基于 Spring 的 MVC 框架,它支持基于 Java 开发 Web 应用程序。MVC 架构很利于开发灵活、低耦合的 Web 应用程序组件。

      M(Model)模型,应用程序的数据载体。通常是一些 POJO。

      V(View)视图,用于渲染一些模型的数据,一般是用来生成用户浏览器的可以解释的HTML。

      C(Controller)控制器,用于处理用户的请求并构建相应的模型,然后交给视图渲染。

      Spring MVC的优点:

        (1)使用简单;

        (2)能够很容易的开发出性能很好的程序;

        (3)灵活,易于扩展;

        (4)具有 Spring 的一些特性;

        (5)支持 REST 风格;

      Spring MVC的缺点:

        (1)很难脱离容器进行独立运行;

        (2)需要编写一些对应的 web.xml配置;

    Spring MVC 请求流程

      

                         (Spring MVC 请求处理流程)

      上图流程涉及到的几个组件的功能说明:

        DispatcherServlet(前端控制器):接收用户请求并返回请求结果。它控制着整个执行流程,对各个组件进行调度,降低组件之间的耦合,就像是一个团队的组织人。

        HandlerMapping(处理器映射器):根据用户的请求 URL,根据 XML 配置或注解找到对应的处理器 Handler。

        HandlerAdapter(处理器适配器):根据映射器找到的 Handler 完成调用处理器中的方法。

        Handler(处理器):处理请求的主要逻辑,返回模型数据和视图。

        ViewResolver(视图解析器):解析具体的视图。通过 ModelAndView 中的 View 将逻辑视图名解析为真正的 视图。

      请求具体步骤如下:

        1:客户端起请求,请求会被前端控制器(DispatcherServlet)拦截

        2:前端控制器(DispatcherServlet)请求处理器映射器(HandlerMapping)查找Handler

        3:处理器映射器(HandlerMapping)根据配置找到相应Handler,可能包含多个Interceptor拦截器,返回给前端控制器

        4:前端控制器(DispatcherServlet)请求处理器适配器(HandlerAdapter)去执行相应的Handler

        5:适配器交由对应Handler处理器执行

        6:  Handler处理器执行完成后返回ModelAndView对象给处理器适配器

        7:处理器适配器接受Handler处理器的返回结果,并将该结果返回给前端控制器(DispatcherServlet)

        8:前端控制器(DispatcherServlet)接收处理器适配器返回的数据和视图信息,请求视图解析器,解析对应的视图

        9:视图解析器根据View信息匹配相应的视图结果,反回给前端控制器

         10:前端控制器接收具体视图,进行视图渲染,将Model数据填充到View视图中,生成最终视图

         11:前端控制器向客户端返回请求结果

  • 相关阅读:
    Django的路由系统
    Django框架简介
    域名与网站名的区别
    简单的链接样式-CSS
    用Javascript获取样式注意的地方
    null和undefined区别
    addLoadEvent(func)详解
    《Javascrip DOM 编程艺术》学习笔记-Chapter5
    某夜凌晨4点所感所悟——未来前端路
    win7-32bit-virtualbox安装问题及解决方式
  • 原文地址:https://www.cnblogs.com/dream-saddle/p/9280725.html
Copyright © 2011-2022 走看看