SpringMVC流程

1.Servlet机制

Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
总结:Servlet是JAVA实现前后端数据交互的一种机制

2.核心对象

Request对象
Response对象
在这里插入图片描述

3. SpringMVC调用流程图

重要的组件

  1. 前端控制器 DispatcherServlet 实现请求的流转
  2. 处理器映射器 实现了请求路径方法之间的映射.
  3. 处理器适配器 处理器的管理器 内部有N个处理器. 针对不同的用户请求 调用不同的处理器完成任务
  4. 视图解析器 实现页面路径的拼接

SpringMVC程序启动前状态说明

父容器概念:

  1. Spring容器(内存中的一大块空间)由于IOC/DI的机制,可以作为第三方的管理者 所以作为父级.
  2. SpringMVC容器,其中只负责Controller层的相关的对象的管理.
  3. 说明:当SpringMVC容器启动时,提前将SpringMVC中的所有请求路径方法方法完成映射.

在这里插入图片描述

SpringMVC执行流程

在这里插入图片描述

  1. 用户发起请求时第一步经过前端控制器
  2. 但是前端控制器 只负责请求的转发和响应。不做任何业务处理,将请求转发给处理器映射器
  3. 处理器映射器接收到前端控制器的请求之后,查询自己维护的服务列表信息
    如果服务列表中有这个URL的key,该程序不能处理用户的请求,则返回特定数据,前端控制器接手之后响应用户404
    如果服务列表中有该URL的key则说明可以正常执行,将该方法的对象返回给前端控制器
  4. 前端控制器将返回的方法进行接收,但是由于前端控制器只负责转发和响应,不能直接执行该方法,所以交给处理器适配器执行。
  5. 处理器适配器根据方法的类型(xml配置文件/注解/其他方法),处理器适配器在自己的处理器库中挑选一个最为合适的处理器去执行该方法,当处理器执行该方法时标识业务开始,将最终的处理结果通过ModelAndView对象进行包裹,返回给前端控制器。
    ModelAndView:Model:代表服务器返回的业务数据 View:服务器端返回的页面的名称
  6. 视图解析器将View中的数据进行解析,拼接一个完整的页面路径 前缀/url/后缀
  7. 视图渲染:将数据与页面进行绑定。这样用户就可以在页面中看到具体的数据
  8. 由于现在流行前后端分离,所以SpringMVC省略了视图解析和视图渲染,只有前5步,有了@ResponseBody省略视图解析和视图渲染。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值