SpringMvc执行流程

SpringMvc执行流程

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


MVC的英文全称是 Model View Controller,它是软件工程的软件架构模式,它把软件系统分为视图,模型,控制器三个部分。


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传递数据+跳转、Model传递数据、@ResponseBody传递数据
  ModelAndView,需要绑定响应页面modelAndView.setViewName("index");ModelAndView类中的addObject()方法用于向其Model中添加数据。Model的底层为一个HashMap。

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

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

pom.xml

posted @ 2022-12-05 15:25  鹿先森JIAN  阅读(786)  评论(0编辑  收藏  举报