zoukankan      html  css  js  c++  java
  • Spring MVC 使用介绍(一)—— 概述

    一、Web MVC简介

    1、经典的MVC架构

        

    存在的问题:1、控制器负责流程控制、请求数据整理与校验、模型与视图选择等功能,过于复杂。2、模型层没有进行分层设计

    2、改进的MVC设计

    1)控制器功能拆分:Front Controller + Application Controller + Page Controller + Context

        

    • 前端控制器:表现层提供统一访问点,主要负责流程控制
    • 应用控制器:负责选择具体的页面控制器(处理器)和具体的视图
    • 页面控制器:功能处理代码,收集参数、封装参数到模型、转调业务对象处理模型、返回逻辑视图名交给前端控制器

    2)模型(JavaBean)采用三层架构

        

    二、Spring MVC 简介

    Spring MVC 框架图:

         

    作为Web MVC的实现,职责对应关系为:DispatcherServlet -> 前端控件器, HandlerMapping与ViewResolver -> 应用控制器, Handler -> 页面控制器

    具体流程:

    1. 用户请求 -> DispatcherServlet
    2. DispatcherServlet -> HandlerMapping,HandlerMapping将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器)对象
    3. DispatcherServlet  -> HandlerAdapter,HandlerAdapter将会把处理器包装为适配器,从而支持多种类型的处理器
    4. DispatcherServlet  -> 处理器功能处理方法的调用,HandlerAdapter会根据适配的结果调用真正的处理器的功能处理方法,完成功能处理,并返回一个ModelAndView对象(包含模型数据、逻辑视图名)
    5. DispatcherServlet  -> ViewResolver,ViewResolver将把ModelAndView对象的逻辑视图名解析为具体的View
    6. DispatcherServlet  -> View渲染,View会根据传进来的Model模型数据进行渲染
    7. DispatcherServlet  -> 用户

    参考:

    第一章 Web MVC简介 —— 跟开涛学SpringMVC

    第二章 Spring MVC入门 —— 跟开涛学SpringMVC

    javaweb学习总结(二十一)——JavaWeb的两种开发模式

    Spring MVC学习笔记

  • 相关阅读:
    2012.05.17
    一些记录
    2012.09.09 js
    2012.05.24 jq Tab
    2012.10.08 关于 开发计划制定、项目管理、功能设计 的想法记录
    2012.05.21 jq Tab
    关于工作状态
    ImageWaterMark参数说明
    关于拼接邮件在存储过程中
    关于使用HtmlAgilityPack
  • 原文地址:https://www.cnblogs.com/MattCheng/p/9154682.html
Copyright © 2011-2022 走看看