返回顶部
首页 > 资讯 > 精选 >Spring MVC的完整执行流程和常用组件有哪些
  • 214
分享到

Spring MVC的完整执行流程和常用组件有哪些

2023-07-02 09:07:55 214人浏览 泡泡鱼
摘要

这篇文章主要介绍“spring mvc的完整执行流程和常用组件有哪些”,在日常操作中,相信很多人在Spring MVC的完整执行流程和常用组件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

这篇文章主要介绍“spring mvc的完整执行流程和常用组件有哪些”,在日常操作中,相信很多人在Spring MVC的完整执行流程和常用组件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Spring MVC的完整执行流程和常用组件有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1.Spring MVC执行流程

Spring MVC的完整执行流程和常用组件有哪些

Spring MVC的完整执行流程如下:

  1. 客户端发送请求给DispatcherServlet前端控制器

  2. DispatcherServlet根据请求调用HandlerMapping处理器映射器

  3. HandlerMapping解析请求对应的Handler,返回一个执行链

  4. DispatcherServlet将执行链返回的Handler信息发给HandlerAdapter处理器适配器

  5. HandlerAdapter会调用对应的Handler处理器(即Controller)

  6. Handler执行完成后,会返回一个ModelAndView对象给HandlerAdapter

  7. HandlerAdapter将接收到的ModelAndView对象返回给DispatcherServlet

  8. DispatcherServlet根据ModelAndView对象选择合适的ViewResolver视图解析器

  9. ViewResolver根据逻辑View返回实际的view给DispatcherServlet

  10. DispatcherServlet对View进行渲染

  11. 将视图渲染结果返回给浏览器(客户端)

2.Spring MVC常用组件

2.1 DispatcherServlet

前端控制器。⽤户请求到达前端控制器,它就相当于MVC模式中的C,DispatcherServlet是整个流程控制的中⼼,由它调⽤其它组件处理⽤户的请求,DispatcherServlet的存在降低了组件之间的耦合性,系统扩展性提⾼。

<!--    springMVC的前端控制器--><servlet>    <servlet-name>DispatcherServlet</servlet-name>    <servlet-class>org.springframework.WEB.servlet.DispatcherServlet</servlet-class>    <!--初始化时加载配置文件-->    <init-param>        <param-name>contextConfigLocation</param-name>        <param-value>classpath:springmvc-config.xml</param-value>    </init-param>    <!--表示容器在启动时立即加载Servlet-->    <load-on-startup>1</load-on-startup></servlet><servlet-mapping>    <servlet-name>DispatcherServlet</servlet-name>    <url-pattern>/</url-pattern></servlet-mapping>

2.2 HandlerMapping

HandlerMapping,处理器映射器。根据⽤户的请求地址来找到对应的Handler即控制器,spring mvc提供了不同的映射器实现不同的映射⽅式,分别有:

  • xml配置⽅式

  • 实现接⼝⽅式

  • 注解⽅式

2.3 HandlAdapter

HandlAdapter,处理器适配器。按照特定的规则去执行Handler,通过HandlerAdapter执行处理器。

2.4 Handler

Handler,处理器。Handler 是DispatcherServlet前端控制器的后端控制器,在DispatcherServlet的控制下Handler对具体的⽤户请求进⾏处理。由于Handler涉及到具体的⽤户业务请求,所以⼀般情况需要程序员根据业务需求开发Handler。也就是我们常说的控制器类和方法。

//标识此类为控制器类@Controllerpublic class jspController {    @RequestMapping("/index")    public String firstController(){    //返回视图名称        return "success";     }}

2.5 ViewResolver

ViewResolver,视图解析器。ViewResolver负责将处理结果⽣成View视图,ViewResolver⾸先根据逻辑视图名解析成物理视图名即具体的页⾯地址,再⽣成View视图对象,最后对View进⾏渲染将处理结果通过页⾯展⽰给⽤户。

 <!--默认的内置视图解析器--><bean id="viewResolver"      class="org.springframework.web.servlet.view.InternalResourceViewResolver">     <!--视图前缀-->    <property name="prefix" value="/WEB-INF/jsp/"/>    <!--视图后缀-->    <property name="suffix" value=".jsp"/></bean>

到此,关于“Spring MVC的完整执行流程和常用组件有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Spring MVC的完整执行流程和常用组件有哪些

本文链接: https://lsjlt.com/news/340607.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Spring MVC的完整执行流程和常用组件有哪些
    这篇文章主要介绍“Spring MVC的完整执行流程和常用组件有哪些”,在日常操作中,相信很多人在Spring MVC的完整执行流程和常用组件有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家...
    99+
    2023-07-02
  • Spring MVC的完整执行流程和常用组件详解
    目录1.Spring MVC执行流程2.Spring MVC常用组件2.1 DispatcherServlet2.2 HandlerMapping2.3 HandlAdapter2....
    99+
    2024-04-02
  • SpringMVC的执行流程有哪些
    今天就跟大家聊聊有关SpringMVC的执行流程有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。#简易版客户发送请求经过 DisPatcherServlet 核心过滤器DisPa...
    99+
    2023-05-31
    springmvc
  • Spring MVC的常用注解有哪些及怎么用
    这篇文章主要介绍了Spring MVC的常用注解有哪些及怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Spring MVC的常用注解有哪些及怎么用文章都会有所收获,下面我...
    99+
    2024-04-02
  • 常用的Vue组件有哪些
    这篇文章主要讲解了“常用的Vue组件有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“常用的Vue组件有哪些”吧!下面这些 Vue 组件,不论对于 Vue...
    99+
    2024-04-02
  • springcloud的常用组件有哪些
    Spring Cloud是一个分布式系统的开发工具包,它提供了一系列常用组件来帮助开发者构建高可用的、可伸缩的分布式系统。常用的Sp...
    99+
    2023-10-20
    springcloud
  • Perl中执行最常见的编程任务有哪些
    这篇文章主要介绍了Perl中执行最常见的编程任务有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Perl是一种非常简单、应用广泛且反响很好的脚本语言。它可用于各种任务(例...
    99+
    2023-06-17
  • 常用的Flex效果组件有哪些
    这篇文章主要介绍了常用的Flex效果组件有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。简单Flex效果组件Flex中提供了丰富的效果组件。由于Flex效果是一种根据时间...
    99+
    2023-06-17
  • React-Native中有哪些常用的组件
    本篇文章给大家分享的是有关React-Native中有哪些常用的组件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ScrollView组件能够调用移动平台的ScrollView...
    99+
    2023-05-31
    react-native
  • 微信小程序常用表单组件有哪些
    今天小编给大家分享一下微信小程序常用表单组件有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、常用表单组件1.1 bu...
    99+
    2023-06-30
  • Vue2和Vue3中常用组件通信方法有哪些
    本篇内容介绍了“Vue2和Vue3中常用组件通信方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Vue3 组件通信方式props$e...
    99+
    2023-07-05
  • 国外非常流行使用的CSS滤镜库和工具有哪些
    这篇文章主要介绍“国外非常流行使用的CSS滤镜库和工具有哪些”,在日常操作中,相信很多人在国外非常流行使用的CSS滤镜库和工具有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • Vue常用的组件通信方式有哪些
    本篇文章和大家了解一下Vue常用的组件通信方式有哪些。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。组建通信的基本模式:父子组件的关系可以总结为 prop 向下传递,事件向上传递。父组件通过 prop 给子组件下发数据,子...
    99+
    2023-06-14
  • 用Bash和Spring Boot创建一个完整的Java Web应用程序,有多难?
    Bash和Spring Boot都是现代化的工具,它们可以让你快速创建一个完整的Java Web应用程序。但是,对于初学者来说,这个过程可能会有一些难度。在本文中,我们将介绍如何使用Bash和Spring Boot创建一个完整的Java ...
    99+
    2023-07-19
    django bash spring
  • Spring Boot应用在启动阶段执行代码的方式有哪些
    这篇文章主要介绍Spring Boot应用在启动阶段执行代码的方式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Spring Boot 提供了至少 5 种方式用于在应用启动时执行代码。我们应该如何选择?本文将会...
    99+
    2023-06-16
  • 跟整理文件相关的CentOS常用命令有哪些
    这期内容当中小编将会给大家带来有关跟整理文件相关的CentOS常用命令有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。下面,就让我们一起来学习关于文件操作的CentOS常用命令吧!创建/改变文件系统的...
    99+
    2023-06-16
  • Python中有哪些同步关键字可以用来控制框架的执行流程?
    Python是一门功能强大的编程语言,它提供了丰富的同步关键字来控制程序的执行流程。在这篇文章中,我们将介绍Python中常用的同步关键字,并且演示一些代码示例来更好地理解它们的用法。 什么是同步关键字? 在Python中,同步关键字是一些...
    99+
    2023-06-24
    同步 关键字 框架
  • html text的常用事件和方法有哪些
    这篇文章主要介绍了html text的常用事件和方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇html text的常用事件和方法有哪些文章都会有所收获,下面我们一起来...
    99+
    2024-04-02
  • Java字符串和数组最常用的方法有哪些
    本篇内容介绍了“Java字符串和数组最常用的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、字符串截取1、slice方法返回字符...
    99+
    2023-06-04
  • Python中有哪些流行的第三方库可以用于处理容器和数组?
    Python是一种高级编程语言,它具有简单易学、优雅简洁、高效快速等特点,因此在数据分析、科学计算等领域广受欢迎。Python中有许多第三方库,其中不乏一些流行的库可以用于处理容器和数组。本文将介绍一些常用的流行库,以及它们的使用方法。 ...
    99+
    2023-06-13
    关键字 容器 数组
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作