首页 > 其他分享 >SpringMvc个人理解

SpringMvc个人理解

时间:2022-12-05 15:36:25浏览次数:40  
标签:xml 个人 SpringMvc 中央 调度 视图 理解 处理器 ModelAndView

SpringMvc执行流程

(1)浏览器提交请求到中央调度器
(2)中央调度器直接将请求转给处理器映射器。
(3)处理器映射器会根据请求,找到处理该请求的处理器,并将其封装为处理器执行链后返回给中央调度器。
(4)中央调度器根据处理器执行链中的处理器,找到能够执行该处理器的处理器适配器。
(5)处理器适配器调用执行处理器。
(6)处理器将处理结果及要跳转的视图封装到一个对象ModelAndView中,并将其返回给处理器适配器。
(7)处理器适配器直接将结果返回给中央调度器。
(8)中央调度器调用视图解析器,将ModelAndView中的视图名称封装为视图对象。
(9)视图解析器将封装了的视图对象返回给中央调度器
(10)中央调度器调用视图对象,让其自己进行渲染,即进行数据填充,形成响应对象。
(11)中央调度器响应浏览器。


applicationContext.xml配置文件

  这是用来配置spring的

  组件扫描,扫描一些spring相关的注解,比如

spring-mvc.xml配置文件

  这是用来配置springmvc的

  首先是组件扫描,只需controller包下的一些springmvc的注解,比如@Controller、@RequestMapping、@ResponseBody。。。

  然后是视图解析器,解析ModelAndView,返回View
  还有注解驱动、静态资源过滤、、、

web.xml

  需要把applicationContext.xml、spring-mvc.xml配置到这里来

  乱码处理、启动Spring上下文、注册springmvc

Controller处理器

  处理来自中央调度器的请求,返回ModelAndView(默认)

  @Controller:表示当前类为处理器

  @RequestMapping:表示当前方法为处理器方法。该方法要对value属性所指定的URI进行处理与响应。

  无非三种:
  ModelAndView,需要绑定响应页面modelAndView.setViewName("index");ModelAndView类中的addObject()方法用于向其Model中添加数据。Model的底层为一个HashMap。

  Model,自定义返回类型,由视图解析器解析。

  @responseBody定义方法,搭配json使用,用HashMap存储数据,localhost接/my3.json即可显示

pom.xml

标签:xml,个人,SpringMvc,中央,调度,视图,理解,处理器,ModelAndView
From: https://www.cnblogs.com/lwj0126/p/16952197.html

相关文章

  • springmvc注册fastJson报错
    原因:依赖版本问题这是我原本引入的依赖,版本是1.2.24<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId......
  • 关于DDD理解
    Domain:实体类、事件、防腐层接口、仓储接口、领域服务。Infrastructure(基础设施):实体类的配置、DbContext、防腐层接口实现、仓储接口实现。1WebAPl:Controller、事件(领域......
  • 文件上传的multipart/form-data属性,你理解了吗
    form表单经常用于前端发送请求,比如:用户填写信息、选择数据、上传文件,对于不同的场景,上传数据的格式也会有些区别。actionaction表示该请求的url地址,定义在form上,请求......
  • 5.shell命令及权限理解
    Shell及权限理解本文将介绍Shell是什么以及Linux中的权限。可以想一想在我们使用计算机的过程中,我们使用图形化界面或者命令行操作与计算机进行交互,是直接与内核进行交互......
  • 搭建WordPress个人博客
    简介WordPress是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。截至2018年4月,排名前1000万的网站中超过30.6%使用Word......
  • 跨链技术学习理解(一)公证人机制、哈希锁定
    跨链资产交换问题两个用户在两个链上都有相应的账户,一个用户如何在用A链上的资产交换另一个用户在B链上的等价另一种资产。比如肥兔子想用1个比特币换豆畜子的10个以太。......
  • 【C语言】【共用体和结构体】有若干个人员的数据,其中有老师和学生,学生的数据中包括:姓
    【结构体】结构体使用struct声明,花括号内的子项称为结构体的成员,结构体名是用户自己指定的,又称为结构体标记。【共用体】共用体用union声明。用法和结构体相似。区别:共用体......
  • 理解 HTTP
    环境:Windows10家庭中文版GoogleChrome108.0.5359.94(正式版本)(64位)fiddlerv5.0.20211.51073for.NET4.6.1Built:2021年12月15日一.概述简述H......
  • MAUI新生3.1-深入理解XAML:附加属性AttachedProperty
    可绑定属性在宿主类上定义,并在XAML文件中的宿主类元素上使用,我们使用的大多数属性都是如此,如【<GridBackgroundColor="AliceBlue"></Grid>】,附加属性BackgroundColor在宿......
  • 深刻理解JAVA并发中的有序性问题和解决之道
    欢迎关注专栏【JAVA并发】更多技术干活尽在个人公众号——JAVA旭阳问题Java并发情况下总是会遇到各种意向不到的问题,比如下面的代码:intnum=0;booleanready=......