首页 >Java >java教程 > 正文

SpringMVC工作流程

原创2020-02-14 14:41:090416

SpringMVC工作流程

一、SpringMVC简介

SpringMVC是一种基于Spring实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,使用了MVC架构模式的思想,将web层进行职责解耦,并管理应用所需对象的生命周期,为简化日常开发,提供了很大便利。

SpringMVC提供了总开关DispatcherServlet;请求处理映射器(Handler Mapping)和处理适配器(Handler Adapter),视图解析器(View Resolver)进行视图管理;动作处理器Controller接口(包含ModelAndView,以及处理请求响应对象request和response),配置灵活,支持文件上传,数据简单转化等强大功能。

(相关视频教程分享:java视频教程

二、工作流程与介绍

1135193-20171005165210099-1015669941.png

(1)客户端通过url发送请求

(2-3)核心控制器Dispatcher Servlet接收到请求,通过系统或自定义的映射器配置找到对应的handler,并将url映射的控制器controller返回给核心控制器。

(4)通过核心控制器找到系统或默认的适配器

(5-7)由找到的适配器,调用实现对应接口的处理器,并将结果返回给适配器,结果中包含数据模型和视图对象,再由适配器返回给核心控制器

(8-9)核心控制器将获取的数据和视图结合的对象传递给视图解析器,获取解析得到的结果,并由视图解析器响应给核心控制器

(10)核心控制器将结果返回给客户端

三、适配器作用

SpringMVC涉及的映射器,视图解析器的作用不难理解,映射器负责将前端请求的url映射到配置的处理器,视图解析器将最终的结果进行解析,但中间为什么要经过一层适配器呢,为什么不经映射器找到controller后直接执行返回呢?

那是因为SpringMVC为业务处理器提供了多种接口实现(例如实现了Controller接口),而适配器就是用来根据处理器实现了什么接口,最终选择与已经注册好的不同类型的Handler Adapter进行匹配,并最终执行,例如,SimpleControllerHandlerAdapter是支持实现了controller接口的控制器,如果自己写的控制器实现了controller接口,那么SimpleControllerHandlerAdapter就会去执行自己写的控制器中的具体方法来完成请求。

更多SpringMVC相关教程,请关注Java教程栏目。

以上就是SpringMVC工作流程的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码
  • 相关标签:SpringMVC 工作流程
  • 本文原创发布php中文网,转载请注明出处,感谢您的尊重!
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • SpringMVC:1、客户端通过url发送请求;2、核心控制器Dispatcher Servlet接收到请求;3、通过核心控制器找到系统或默认的适配器;4、由找到的适配器,调用实现对应接口的处理器
    springmvc是:首先用户向服务端发送一次请求,请求会先到前端控制器DispatcherServlet;接着将ModelAndView交给ViewReslover视图解析器解析;然后返回真正的视图
    SpringMVC原理:首先DispatcherServlet根据浏览器的请求调用对应的Controller;然后Controller会将处理完业务后的结果进行返回;最后DispatcherServlet
    docker介绍:1、一切都从Dockerfile开始;2、创建容器的镜像;3、在获得容器的镜像后,使用注册表重新分发容器;4、运行容器。
    php:PHP是运行与服务器端的脚本语言,实现了数据库与网页之间的数据交互,一个完整的PHP网站系统由操系统,数据库,浏览器这三部分组成。
    springmvc原理是:1、浏览器发送请求给DispatcherServlet;2、根据请求找到对应的Controller;3、返回ModelAndView;4、找到对应的视图对象View并渲染
    word制图多折线箭头的方法是:1、首先,点击【绘图】具栏中的【直线】选项,画一条直线;2、然后,点击【绘图】具栏中的【箭头】按钮,画一条带箭头的直线;3、最后,组合所有直线即可。
    启动Excel应用序后自动建立的薄文件的文件名为Book1。每一本簿可以拥有许多不同的表,簿中最多可建立255个表。
    现在互联网发展这么快,PHP师岗位需求越来越多,单从市场需求来看,学完PHP还是非常好找的,但前提是有足够的技能水平。
    php序的步骤:1、通过浏览器访问php文件,浏览器会向服务器发送一个请求;2、服务器会根据请求对php文件进行解析,只会把“<?php?
    win7远连接凭据不的解决办法:首先找到并打开【运行】;然后输入【gpedit.msc】,打开注册表编辑器;接着依次找到【菜单-计算机配置-管理模板-凭据分配】;最后刷新组策略,让设置生效即可。
    ssm框架原理是:将Spring、SpringMVC、MyBatis整合在一起,为数据源较简单的web项目的框架。
    看完微信小序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简。废话不多说,直接分析前端代码。个人观点,难免有疏漏,仅供参考。
    这篇文章主要介绍用canvas绘制节点。希望对学习js的同学有帮助!
    在各类管理平台的开发过中,审批是一个没法规避的问题。审批问题,不仅仅要考虑技术实现,还要考虑用户的使用频率,易用性。如果使用软件的公司利用钉钉进行审批考核,管理系统的审批完全可以考虑接入直接钉钉。
    图中带有箭头的线段表示的是“控制”,图是人们对解决问题的方法、思路或算法的一种图形方式的描述,其中图框表示各种操的类型,图框中的文字和符号表示操的内容,而带箭头的线段在图中表示控制
    在《关于nginx事件模块结构体的详解》这篇文章中,我们讲解nginx的事件模块的整体,并且着重讲解了组织事件模块的各个方法的用,本文则主要围绕这整个,从源码的角度讲解nginx事件模块的实现细节
    PHP近几年很热门,被广泛应用在全球60%的网站开发中,腾讯、新浪、百度、微博等都有运用这个技术,尤其是中小企业对PHP人才需求量大,比较好找
    2020年最行的编语言有JavaScript、Python、Java、C/C++、PHP、Go这六种编语言,得出这六种编语言根据市场、社区、编语言、 Stack OverFlow的有效性和
    在计算机系统中配置操系统的主要目的是管理计算机系统中提高系统使用效率,合理地组织系统的,以提高系统吞吐量。

    专题推荐

    推荐视频教程
  • 阿里巴巴Java开发手册阿里巴巴Java开发手册
  • Spring中文手册Spring中文手册
  • 马士兵spring视频教程马士兵spring视频教程
  • 最新Java完整视频教程最新Java完整视频教程
  • 视频教程分类