万隆的笔记 万隆的笔记
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
  • Spring

  • SprinvMVC

    • Spring MVC 简介
      • DispatcherServlet组件类
    • 三层架构与MVC
    • Spring整合SpringMVC
    • Hello-Controller控制器
    • SpringMVC拦截器的使用
    • SpringMVC表单标签库
    • SpringMVC的一些注解
  • SpringBoot

  • Spring
  • SprinvMVC
2021-03-05
目录

Spring MVC 简介

# Spring MVC 简介

Spring MVC 也叫 Spring Web MVC,属于展示层框架。SpringMVC是Spring框架的一部分。

Spring Web MVC 框架提供了MVC(模型-视图-控制器)架构和用于开发灵活和松散耦合的Web应用程序的组件。MVC模式导致应用程序的不同方面(输入逻辑、业务逻辑和UI逻辑)分离,同时提供了这些元素之间的松散耦合。

  • 模型(Model):封装了应用程序数据,通常它们将由POJO类组成。
  • 视图(View):负责渲染模型数据,一般来说它生成客户端浏览器可以解释HTML输出。
  • 控制器(Controller):负责处理用户请求并构建适当的模型,并将其传递给视图进行渲染。

# DispatcherServlet组件类

传统的Servlet使用不灵活,每创建一个Servlet都需要到web.xml中进行配置,默认调用doGet() 或 doPost()方法。一个Servlet中有多个业务函数的需要使用传参数的方式做到灵活调用。例如:?opt=add/del/update

针对上述问题,SpringMVC是这样解决的:Spring Web MVC 框架是围绕DispathcerServlet设计的(核心组件),它处理所有的HTTP请求和响应,它的设计是方法级别的处理。Spring Web MVC DispatcerServlet的请求处理工作流如下图所示:

img

DispathcerServlet传入HTTP请求的事件顺序:

  • 在接收到HTTP请求后,DispathcerServlet会查询HandlerMapping以调用相应的Controller。
  • Controller接受请求并根据使用的GET或POST方法调用相应的服务方法。服务方法将基于定义的业务逻辑设置模型数据,并将视图名称返回给DispahtcerServlet。
  • DispathcerServlet将从ViewResolver获取请求的定义视图。
  • 当视图完成,DispathcerServlet将模型数据传递到最终的视图,并在浏览器上呈现。

所有上诉组件,即HandlerMapping、Controller和ViewResolver是WebApplicationCotext的一部分,它是普通ApplicationContext的扩展,带有Web应用程序所需的一些额外功能。

上次更新: 5/30/2023, 12:51:40 AM
三层架构与MVC

三层架构与MVC→

最近更新
01
2025
01-15
02
Elasticsearch面试题
07-17
03
Elasticsearch进阶
07-16
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式