Springmvc的运行原理图和数据流向

一. Springmvc的运行原理图

  1. 用户请求发送到前端控制器DispatcherServlet。
  2. 前端控制器DispatcherServlet接收到请求后,DispatcherServlet会使用HandlerMapping来处理,HandlerMapping会查找到具体进行处理请求的Handler对象。
  3. HandlerMapping找到对应的Handler之后,并不是返回一个Handler原始对象,而是一个Handler执行链,在这个执行链中包括了拦截器和处理请求的Handler。HandlerMapping返回一个执行链给DispatcherServlet。
  4. DispatcherServlet接收到执行链之后,会调用Handler适配器去执行Handler。
  5. Handler适配器执行完成Handler(也就是我们写的Controller)之后会得到一个ModelAndView,并返回给DispatcherServlet。
  6. DispatcherServlet接收到Handler适配器返回的ModelAndView之后,会根据其中的视图名调用视图解析器。
  7. 视图解析器根据逻辑视图名解析成一个真正的View视图,并返回给DispatcherServlet。
  8. DispatcherServlet接收到视图之后,会根据上面的ModelAndView中的model来进行视图渲染完成之后,DispatcherServlet就可以将结果返回给用户。

原文地址:https://www.cnblogs.com/supertan/p/9221113.html

时间: 2024-10-13 06:45:41

Springmvc的运行原理图和数据流向的相关文章

软件设计文档及数据流向图

1 数据流向图:张涛 033  2 软件设计结构图:马冀伟 034 3 软件概要设计详细设计文档:王树才  030 一:数据流向图 二:软件设计结构图 三: 软件概要设计详细设计文档 项目名称:  基于服务器的购物系统 1 数据层: 产生的数据有:物品的基本信息,包括名称, 数量,价格,类别,说明,图片:订单信息,包括订单提交时间,订单详情,订单失效时间:用户信息,包括用户名,登录密码,登录时间: 用户上传自己数据:物品名称,数量,价格,类别,说明,图片,用户手机号. 2 整体结构 1 用户登录

源码深度解析SpringMvc请求运行机制

本文依赖的是springmvc4.0.5.RELEASE,通过源码深度解析了解springMvc的请求运行机制.通过源码我们可以知道从客户端发送一个URL请求给springMvc开始,到返回数据给客户端期间是怎么运转的. 1.用户请求处理过程: 1.用户发送请求时会先从DispathcherServler的doService方法开始,在该方法中会将ApplicationContext.localeResolver.themeResolver等对象添加到request中,紧接着就是调用doDisp

源码深度解析SpringMvc请求运行机制(转)

源码深度解析SpringMvc请求运行机制 本文依赖的是springmvc4.0.5.RELEASE,通过源码深度解析了解springMvc的请求运行机制.通过源码我们可以知道从客户端发送一个URL请求给springMvc开始,到返回数据给客户端期间是怎么运转的. 1.用户请求处理过程: 1.用户发送请求时会先从DispathcherServler的doService方法开始,在该方法中会将ApplicationContext.localeResolver.themeResolver等对象添加到

图表推荐:甘特图与框架图,大数据流向地图重磅来袭!

帆软图表(新特性)最新版本的图表插件新增了甘特图与框架图两种图表类型,大大方便了生产管理所需,同时支持流向地图的大数据模式. 一.甘特图 甘特图又称任务计划进度图,其通常用来表示项目进展随着时间进度的变化.甘特图被广泛的应用在各行业的项目管理中,因此帆软在最新的图表插件中,新增了该图表类型,以满足任务进度可视化的需求. FineReport新甘特图功能扩展十分强大,能够满足多层级项目所需以及多系列任务:支持各个任务的里程碑设置.进度管理等:包含四种任务关联线 (开始-完成,开始-开始,完成-开始

SpringMVC中controller接收Json数据

SpringMVC中controller接收Json数据 1.jsp页面发送ajax的post请求: function postJson(){ var json = {"username" : "imp", "password" : "123456"}; $.ajax({ type : "post", url : "<%=basePath %>ajaxRequest", co

springmvc学习笔记(18)-json数据交互

springmvc学习笔记(18)-json数据交互 springmvc学习笔记18-json数据交互 springmvc进行json交互 环境准备 添加json转换的依赖 配置json转换器 json交互测试 输入json串输出是json串 输入keyvalue输出是json串 本文主要介绍如何在springmvc中进行json数据的交互,先是环境准备和配置,然后分别展示了"输入json串,输出是json串"和"输入key/value,输出是json串"两种情况下

一张图看清数据库管理系统的组成模块和数据流向

DBMS分两大部分组成: 1,数据库环境的各种用户以及他们的接口: 2,数据库的内部结构,包括数据的存储和事务的处理. 数据库管理系统的组成模块及数据流向图

SpringMVC中controller返回json数据的两种方法

SpringMVC中controller返回json数据的两种方法 1.jsp的ajax请求: function getJson(){ $.ajax({ type:"get", dataType:"json", url:"<%=basePath %>getJson", success:function(data){ for(var i=0;i<jsonData.length;i++){ alert("Id:"

SpringMVC中用于绑定请求数据的注解以及配置视图解析器

SpringMVC中用于绑定请求数据的注解 在上一篇文章中我们简单介绍了@RequestMapping与@RequestParam注解,知道了如何去配置地址映射,本篇则介绍一些用于处理request数据的注解. [email protected]注解,该注解用于处理request中的header部分,也就是http请求头的部分,它可以把header部分的值绑定到方法的参数上,示例: package org.zero01.test; import org.springframework.stere