首页 > 其他分享 >springmvc的工作流程

springmvc的工作流程

时间:2023-10-05 15:33:51浏览次数:29  
标签:请求 springmvc 流程 视图 工作 Controller 处理器 DispatcherServlet 适配器

1、springmvc工作原理图

 

 

 

 

2、springmvc工作流程

1、 用户向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。
2、DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器。由此得知,该请求该由哪个Controller来处理(并未调用Controller,只是得知)
3、DispatcherServlet调用HandlerAdapter处理器适配器,告诉处理器适配器应该要去执行哪个Controller
4、HandlerAdapter处理器适配器去执行Controller并得到ModelAndView(数据和视图),并层层返回给DispatcherServlet
5、DispatcherServlet将ModelAndView交给ViewReslover视图解析器解析,然后返回真正的视图。
6、DispatcherServlet将模型数据填充到视图中
7、DispatcherServlet将结果响应给用户

3、组件说明

  • DispatcherServlet:前端控制器,也称为中央控制器,它是整个请求响应的控制中心,组件的调用由它统一调度。
  • HandlerMapping:处理器映射器,它根据用户访问的 URL 映射到对应的后端处理器 Handler。也就是说它知道处理用户请求的后端处理器,但是它并不执行后端处理器,而是将处理器告诉给中央处理器。
  • HandlerAdapter:处理器适配器,它调用后端处理器中的方法,返回逻辑视图 ModelAndView 对象。
  • ViewResolver:视图解析器,将 ModelAndView 逻辑视图解析为具体的视图(如 JSP)。
  • Handler:后端处理器,对用户具体请求进行处理,也就是我们编写的 Controller 类。

标签:请求,springmvc,流程,视图,工作,Controller,处理器,DispatcherServlet,适配器
From: https://www.cnblogs.com/djcCode/p/17743408.html

相关文章

  • 远程工作和私活与创业者
    大家好,我是一枚程序员我在运营一个IT从业者俱乐部,它就是3R教室!什么是3R教室?一个以远程学习与资源互通为中心的社区截止2023年4月7日,社区中目前已经拥有200多名IT从业者,由从事编码行业的程序员,提供远程岗位的招聘方,海外项目的提供者,寻找有前景的项目的投资人以及其他行业打算转行的......
  • SpringMVC使用@Valid注解实现数据验证
    一、@Valid注解的作用@Valid注解是javax.validation包中的一个注解,它可以用来标注需要验证的数据对象。当一个带有@Valid注解的对象传递给SpringMVC的控制器方法时,SpringMVC会自动调用验证器来验证这个对象。二、数据验证的流程SpringMVC中的数据验证流程如下:......
  • SpringMVC拦截器
     1.拦截器接口 2.工作流程 3.配置拦截器1<!--配置拦截器(可多个)-->2<mvc:interceptors>3<mvc:interceptor>4<!--设置拦截器要拦截的url地址-->5<mvc:mappingpath="/user/**"/>6<!--设置拦截器不拦截的url地址-->7......
  • SpringMVC异常处理
     @ControllerAdvice没有切点只有增强1.全局统一异常处理类1packagecom.cn.globalexpction;23importorg.springframework.ui.ModelMap;4importorg.springframework.web.bind.annotation.ControllerAdvice;5importorg.springframework.web.bind.annotation.......
  • SpringMVC resultful架构风格
     <inputtype="hidden"name="_method"value="DELETE"/>  1.RestfulController.java 1packagecom.cn.restful;23importorg.springframework.stereotype.Controller;4importorg.springframework.ui.ModelMap;5......
  • c# winfom从0学习开发开发OA、BPM工作流程与自定义表单系统(一)设计前准备
    使用DevComponents.DotNetBar2.dllmessagebox样式不能满足当前的要求,所以就把消息框使用了窗体自定义样式展示 窗体的具体代码publicpartialclassFormMessageBox:Office2007Form{publicDialogResultUserChoice{get;privateset;}public......
  • 智慧导诊系统的技术支撑与实际运作流程
    智慧导诊系统源码,智能导诊全套源码什么是智慧导诊系统?简单地说,智慧导诊系统是一种利用人工智能技术,为医生提供帮助的系统。它可以通过分析患者的症状和病史为医生提供疾病诊断和治疗方案的建议。智慧导诊系统需要具备以下技术支撑才能实现1) 人工智能技术支撑。智慧导诊系统的核......
  • 搭建Springboot+Vue+Element的简单系统流程
    今天研究了一下如何把Springboot+Mybatis和Vue+Element结合起来使用详细写一篇博客来记录一下流程吧,因为途中发现了很多的问题首先,创建Springboot项目,惯例添加依赖<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="htt......
  • IBM企业业务流程框架介绍及构建步骤详解
    本人在四大咨询机构从事咨询工作多年,二十年一线数字化规划咨询经验,提供制造业数智化转型规划服务,顶层规划/企业架构/数据治理/数据安全解决方案资料干货.一、前言   IBM作为世界上最大的服务公司、第三大软件公司、第三大数据库公司,在它的发展过程和发展策略上有很多值得我......
  • 手动开发-实现SpringMVC底层机制--小试牛刀
    在这里说的底层机制的实现主要是指:前端控制器、Controller、Service注入容器、对象自动装配、控制器方法获取参数、视图解析、返回json数据。前端控制器前端控制器就是核心控制器。在这里我们可以设计一个Servlet来充当核心控制器:LingDispatcherServlet.java.这个控制器的作用......