返回顶部
首页 > 资讯 > 后端开发 > JAVA >SpringMVC工作流程(超级详细版)
  • 956
分享到

SpringMVC工作流程(超级详细版)

springjava后端 2023-08-31 20:08:56 956人浏览 泡泡鱼
摘要

目录 一:springMVC常用基本组件 二:SpringMVC执行的流程 一:springMVC常用基本组件 DispatcherServlet 是springmvc框架了里面的前端控制器 作用:统一处理用户发来的请求并和响应

目录

一:springMVC常用基本组件

二:SpringMVC执行的流程


一:springMVC常用基本组件

DispatcherServlet

springmvc框架了里面的前端控制器

作用:统一处理用户发来的请求并和响应,相当于一个中间转换器,减少了各个组件之间的调度,减少的耦合性。

HandlerMapping

是SpringMVC框架里面的处理器映射器

作用:根据请求发来的url 和method找到对应的Handler(就是说在一个用到SpringMVC框架的项目中会有好多方法和逻辑这个组件的作用就是找到对应的方法和组件返回给前端控制器)

Handler

程序员自己创建的控制器

作用:就是程序员自己根据用户的要求写出的逻辑方法为用户提供提供服务(我理解的) 

HandlerAdaper

是SpringMVC框架提供的 处理器适配器

作用:根据前端控制器传过来的Handler找到自己对用的控制器并执行

(我的理解就是处理器映射器找到对应的方法,但这些方法会需要一下特殊的配置或者参数这个组件作用就是提供并执行的)

ViewResolver

是SpringMVC框架提供的 视图解析器

作用:就是字如其名,就是用来将处理的结果解析成视图来展现给用户。视图解析器根据逻辑视图名解析成物理视图名,生成View视图对象,最后对视图进行渲染响应给用户。 

View

开发者自己提供的 视图

作用就是,根据model对象的要求来渲染 页面,然后但会给前端控器在相应给用户。

二:SpringMVC执行的流程

 执行前;当一个请求发来时先进服务器Tomcat),在服务器中会有拦截器,过滤器啊,等这些功能走完之后,才真正的进入了框架中。

用户发来一个请求,首先进入的是前端控制器DispatcherServlet

前端控制器将(DispacherServlet)用户发来的请求发送给处理器映射器(HandlerMapping

处理器映射器根据前端控制器发来的用户的请求找到对应符合的控制器(Handler),并且将其封装成处理器执行链,返回给前端控制器

4.处理器适配器接收到来自前端控制器的执行链后,找到对应执行此执行链的处理器适配器(HandlerAdapter)来调用的具体的控制器(就是说其对应的方法或者逻辑)

控制器执行完成后,会返回一个ModelAndView对象处理器适配器

处理器适配器将返回来的ModelAndView对象返回给前端控制器(到这里所有的业务处理过程就要完了,接下就是将结果以页面的的形式相应给用户)

7.前端控制器将返回回来的ModelAndView对象交给视图解析器(ViewResolver)视图解析器根据传过里的View对象解析成对应的页面对象,然后将页面对象和Model对象返回给前端控制器

前端控制器再将返回回来的对象交给视图(View),视图根据传过来的Model对象再一次的对页面进行渲染,然后在返回给前端控制器。

前端控制器将完成的结果响应给浏览器,然后浏览器在展现给用户。

来源地址:https://blog.csdn.net/qq_58155240/article/details/127344404

--结束END--

本文标题: SpringMVC工作流程(超级详细版)

本文链接: https://lsjlt.com/news/386815.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringMVC工作流程(超级详细版)
    目录 一:springMVC常用基本组件 二:SpringMVC执行的流程 一:springMVC常用基本组件 DispatcherServlet 是SpringMVC框架了里面的前端控制器 作用:统一处理用户发来的请求并和响应...
    99+
    2023-08-31
    spring java 后端
  • SpringMVC工作流程(详-小白版)
    目录 一、SpingMVC的常用组件  二、SpringMVC的工作流程 一、SpingMVC的常用组件 1)DispatcherServlet 是一种前端控制器,由框架提供。 作用:统一处理请求和响应。除此之外还是整个流程控制的中...
    99+
    2023-08-31
    spring java
  • SpringMVC工作流程
    SpringMVC工作流程 一、SpringMVC简介SpringMVC是一种基于Spring实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,使用了MVC架构模式的思想,将web层进行职责解耦,并管理应用所需对象的生命周期,...
    99+
    2014-08-02
    java教程 SpringMVC 工作流程
  • 手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)【转】
    一. 框架详情Spring 是一个轻量级的Java开发框架,它是为了解决企业应用开发的复杂性而创建的。Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应...
    99+
    2024-04-02
  • C++输入流和输出流 超级详细
    目录1、简单介绍2、C++输入流和输出流1、简单介绍 C++ 又可以称为“带类的 C”,即可以理解为 C++ 是 C 语言的基础上增加了面向对象(类和对象)。在此基础上,学过 C 语...
    99+
    2024-04-02
  • springmvc的工作流程是什么
    Spring MVC的工作流程如下:1. 客户端发送HTTP请求到DispatcherServlet。2. DispatcherSe...
    99+
    2023-08-18
    springmvc
  • 【SpringMVC】上篇,超详细的教程带你学会SpringMVC
    ✅作者简介:热爱Java后端开发的一名学习者,大家可以跟我一起讨论各种问题喔。 🍎个人主页:Hhzzy99 🍊个人信条:坚持就是胜利! 💞当前专栏:【Spring】 🥭本文...
    99+
    2023-08-18
    java servlet spring
  • C++文件操作,超级详细
    目录 常用的文件操作方式:打开文件打开方式参数以只读方式打开文件以只写方式打开文件以追加方式打开文件文件流迭代器 常用的文件操作方式: FILE 结构体:FILE 结构体是 C 语言中...
    99+
    2023-10-18
    c++ ios 开发语言
  • C++超详细梳理IO流操作
    目录1.标准输出输入流-控制台流(iostream类) 2. 文件流(I/O操作)文本文件使用<< >> 进行读写getline()读取一行get(...
    99+
    2024-04-02
  • Windows—FTP配置(超详细流程)
    FTP配置详细流程 1.查看网络状态 目录 FTP配置详细流程 1.查看网络状态 1.1 客户机网络状态 1.2服务器→客户机连接(选择性) 1.3客户机→服务器连接(选择性) 2.添加用户 3.FTP服务 3.1 启动服务 3.2 新建F...
    99+
    2023-09-02
    服务器 网络 运维
  • Anaconda安装教程(超详细版)
    目录 一、Anaconda简介 二、运行环境 三、安装Anaconda 四、手动配置环境变量(重点) 五、测试Anaconda环境是否配置成功 一、Anaconda简介 Anaconda,一个开源的Python发行版本,可用于管理Pyt...
    99+
    2023-09-01
    python 开发语言 big data 大数据
  • 超详细的PHPStudy安装及初级操作教程
    最近刚学的PHP编程语言,总结一下相关软件的安装操作。 一、相关软件的安装 课本上有两种PHP的环境搭建方式: ①下载各个部分,然后安装 ②直接下载一个集成软件,如PHPStudy。 环境搭建软件下载: 小皮面板(phpstud...
    99+
    2023-09-08
    php html5 Powered by 金山文档
  • 超级详细的 Maven 教程(基础+高级)
    1. Maven 是什么 Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。 一个 Maven 工程有约定的目录结构,约定的目录结构对于 Maven 实现自动化构建而言是必不可少的一环...
    99+
    2023-08-16
    maven java
  • Linux系统启动流程(超详细)
    目录 前言 为什么要了解系统启动流程? 正文 linux开机启动流程图 1. 开机自检 (POST, Power On Self Test) 2. 启动顺序 3、主引导记录 MBR( master boot record) 4、启动管理器...
    99+
    2023-09-14
    linux 运维 服务器
  • SpringBoot超详细分析启动流程
    目录1、创建SpringApplication1.1、判断web类型1.2、加载上下文初始化器1.3、加载监听器1.4、获得引导类类型2、执行SpringApplication的ru...
    99+
    2024-04-02
  • Linux超详细gcc升级全过程
    目录前言1.当前gcc版本2.安装gcc3.gmp安装4.MPFR编译5.MPC编译6.GCC 配置7.GCC版本更新前言 c c++ 等等 需要这个编译器gcc,最近有DBA的朋友咨询RHEL7.6操作系统安装mysq...
    99+
    2022-06-04
    Linux升级gcc版本 gcc版本如何升级
  • pytorch超级详细的安装教程
    pytorch超级详细的安装教程 第一次安装的时候安装了差不多有一整天,还安装失败了。这次安装的速度很快。 首先是Anaconda的下载,我用的是上学期学python的时候老师之前给的安装包,很快就安...
    99+
    2023-09-06
    pytorch 深度学习 python
  • 超详细教你怎么升级Mysql的版本
    目录一、前言二、备份数据库三、卸载原来的Mysql四、恢复之前的数据库一、前言 将mysql5.7 升级为mysql 8.0 准备两个压缩包! 二、备份数据库 1.cmd进入原来数...
    99+
    2024-04-02
  • IDEA配置Maven教程(超详细版~)
    文章目录 前言一、Maven下载二、配置Maven环境变量三、settings.xml配置文件修改四、打开IDEA配置Maven 前言 本文介绍在IDEA中配置Maven 一、Maven下载 首先我们进入maven官方网站,...
    99+
    2023-08-16
    maven intellij-idea java
  • Android Studio安装教程(保姆级超级详细)
    Android Studio 下载安装教程 一 访问官方网站二 下载三 安装Android Studio四 导入设置文件五 AS的安装向导界面六 运行成功界面 一 访问官方网站 进入And...
    99+
    2023-09-05
    android java android studio
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作