SpringMvc工作流程图讲解

SpringMvc工作流程图讲解SpringMvc工作流程图讲解这是博主根据很多书籍自己总结的一个过程,可能会有错误,敬请指出,共同学习

大家好,又见面了,我是你们的朋友全栈君。

SpringMvc工作流程图讲解
SpringMvc工作流程图讲解

1、 首先用户发送请求——>DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行 处理,作为统一访问点,进行全局的流程控制;
2、 DispatcherServlet——>HandlerMapping, HandlerMapping 将会把请求映射为 HandlerExecutionChain 对象(包含一 个 Handler 处理器(页面控制器)对象、多个 HandlerInterceptor 拦截器)对象,通过这种策略模式,很容易添加新 的映射策略;
4、 HandlerAdapter——>处理器功能处理方法的调用,HandlerAdapter 将会根据适配的结果调用真正的处理器的功能处 理方法,完成功能处理;并返回一个 ModelAndView 对象(包含模型数据、逻辑视图名);
5、 ModelAndView 的逻辑视图名——> ViewResolver, ViewResolver 将把逻辑视图名解析为具体的 View,通过这种策 略模式,很容易更换其他视图技术;
6、 View——>渲染,View 会根据传进来的 Model 模型数据进行渲染,此处的 Model 实际是一个 Map 数据结构,因此 很容易支持其他视图技术; 7、返回控制权给 DispatcherServlet,由 DispatcherServlet 返回响应给用户,到此一个流程结束。

在此我们可以看出具体的核心开发步骤:
1、 DispatcherServlet 在 web.xml 中的部署描述,从而拦截请求到 Spring Web MVC
2、 HandlerMapping 的配置,从而将请求映射到处理器
3、 HandlerAdapter 的配置,从而支持多种类型的处理器
4、 ViewResolver 的配置,从而将逻辑视图名解析为具体视图技术
5、处理器(页面控制器)的配置,从而进行功能处理

总结可能会有错误,敬请指出,共同学习

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134532.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 【用python编写一个简单的单线程wifi暴力破解工具】

    源代码a.txt:密码文件crack.py:wifi破解模块main.py:主模块scan.py:wifi扫描模块scan.pyimportpywifiimporttime#WiFi扫描模块defwifi_scan():#初始化wifiwifi=pywifi.PyWiFi()#使用第一个无线网卡interface=wifi.interfaces()[0]#开始扫描interface.scan()

  • 睿智的目标检测26——Pytorch搭建yolo3目标检测平台[通俗易懂]

    睿智的目标检测26——Pytorch搭建yolo3目标检测平台[通俗易懂]睿智的目标检测26——Pytorch搭建yolo3目标检测平台学习前言源码下载yolo3实现思路一、预测部分1、主题网络darknet53介绍2、从特征获取预测结果3、预测结果的解码4、在原图上进行绘制二、训练部分1、计算loss所需参数2、pred是什么3、target是什么。4、loss的计算过程训练自己的yolo3模型学习前言一起来看看yolo3的Pytorch实现吧,顺便训练一下自己的…

  • jQuery+CSS3实现404背景动画特效

    效果:http://hovertree.com/texiao/jquery/74/源码下载:http://hovertree.com/h/bjaf/ko0gcgw5.htm效果图如下:代码如下:转自

    2021年12月26日
  • IntellijIdea 非Maven项目打Jar包

    IntellijIdea 非Maven项目打Jar包  一、以SpringBoot项目为例,在未使用maven的情况下将其打成Jar包。  二、将其打成散包,即项目依赖的Jar包在目录同级或子级。好处是如果项目更新,只需要更新项目的jar,不需要更新所有。  一、检查项目是否包含META-INF文件夹。     若包含META-INF文件夹,将其删除。等下重新生成。  二、构建Artifacts  2.1选择菜…

  • Java IO流之PrintWriter分析「建议收藏」

    Java IO流之PrintWriter分析「建议收藏」简介PrintWriter继承于Writer抽象类,属于字符流的一种,方法包含了写入单个字符和字符数组的方法.但不包含原始字节写入的方法.在设置自动刷新的时候,不像PrintStream流中遇到换行符就会刷新,PrintWriter只有调用了printf,println,format三类方法其中一种才会自动刷新.PrintWriter流永远不会抛出异常,因为当抛出异常的时候,流内部会将异常捕获…

  • MySQL 数据库命名规范.PDF

    MySQL 数据库命名规范.PDF

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号