iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Spring MVC面试题及答案有哪些
  • 594
分享到

Spring MVC面试题及答案有哪些

2023-06-02 14:06:43 594人浏览 安东尼
摘要

本篇内容介绍了“spring mvc面试题及答案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、 MVC是设计模式的缩写,它代表

本篇内容介绍了“spring mvc面试题及答案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

  1、 MVC是设计模式的缩写,它代表什么?它背后的思想是什么

  MVC是模型 - 视图 - 控制器设计模式的缩写。该模式基于关注点分离设计原理,该原理促进处理不同层的不同功能和层之间的松散耦合。 在MVC模式中,Model包含View和Controler帮助在请求处理和路由中呈现的数据。

  2、是否需要在类路径中使用spring-mvc.jar,或者是spring-core的一部分?

  spring-mvc.jar不是spring-core的一部分,如果要在Java项目中使用Spring MVC框架,则必须在应用程序的类路径中包含spring-mvc.jar。在JAVA WEB应用程序中,spring-mvc.jar通常放在/ WEB-INF / lib文件夹中。

  3、什么是DispatcherServlet以及它用于什么?

  DispatcherServlet是Front Controller设计模式的一个实现,它处理对Spring MVC应用程序的所有传入Web请求。前端控制器模式是Web应用程序中的常见模式,其作用是接收所有请求并将其路由到应用程序的不同组件以进行实际处理。

  在Spring MVC的情况下,DispatcherServlet将Web请求路由到Spring MVC控制器。

  在Spring MVC中,DispatcherServlet用于查找正确的Controler以处理请求,它在处理程序映射的帮助下执行,例如@RequestMapping注释。

  它还负责将逻辑视图名称委派给ViewResolver,然后将呈现的响应发送到客户端。

  4、DispatcherServlet如何通过应用程序上下文实例化?

  DispatcherServlet由Tomcat或Jetty等Servlet容器实例化。必须将DispatcherServlet定义到web.xml文件中。

  可以看到load-on-startup标记为1,当Spring MVC应用程序部署到Tomcat或任何其他Servlet容器时,将实例化DispatcherServlet。在实例化期间,它会查找文件servlet-name-context.xml,然后初始化此文件中定义的bean。

  5、Spring MVC中的root应用程序上下文是什么?怎么装载的?

  在Spring MVC中,使用ContextLoaderListener加载的上下文称为“root”应用程序上下文,它属于整个应用程序,而使用DispatcherServlet初始化的应用程序上下文实际上是特定于该servlet。

  从技术上讲,Spring MVC允许在Spring MVC Web应用程序中使用多个DispatcherServlet ,因此可能存在多个这样的上下文,每个上下文都针对相应的servlet,但是具有相同的根上下文。

  6、@Controller注释的用途?如何在没有注释的情况下创建控制器?

  @Controller是用来定义Controller的Spring MVC注释,但实际上它只是一个原型注释。甚至可以在没有@Controller的情况下通过使用@Component注释Spring MVC控制器类来创建控制器。请求映射到处理程序方法的实际工作是使用@RequestMapping注释来完成的。

  7、什么是ContextLoaderListener,它的作用是什么?

  ContextLoaderListener是一个监听器,这有助于引导Spring MVC的。顾名思义它加载并创建ApplicationContext,因此不必编写显式代码来创建它。应用程序上下文是Spring bean离开的地方。对于Web应用程序,有一个名为WebAppliationContext的子类。

  ContextLoaderListener还将ApplicationContext的生命周期与ServletContext的生命周期联系起来。这可以使用getServletContext()方法从WebApplicationContext获取ServletContext。

  8、传入请求如何映射到控制器和方法?

  有时也会问这个问题DispatcherServlet如何知道哪个Controller应该处理请求?

  Spring使用处理程序映射将控制器与请求相关联,两个常用的处理程序映射是BeanNameUrlHandlerMapping和SimpleUrlHandlerMapping。

  在BeanNameUrlHandlerMapping中,当请求url与bean的名称匹配时,bean定义中的类是将处理请求的控制器。

  另一方面,在SimpleUrlHandlerMapping中,映射更明确。可以指定URL的数量,并且每个URL可以与控制器显式关联。

  顺便说一句,如果你使用注释来配置Spring MVC,那么应该使用@RequestMapping注释将传入请求映射到控制器和处理程序方法。

  还可以通过URI路径,查询参数,请求的Http方法以及请求中存在的HTTP标头配置@RequestMapping批注。

  9、@RequestParam用于什么?

  @RequestParam是一个Spring MVC注释,其被用于提取从URL中控制器的处理程序方法请求参数或查询参数,

  @RequestParam注释也支持数据类型转换,例如这里可以看到一个String被自动转换为long,但它也可能导致一个异常,如果查询参数不存在或类型不匹配的情况下 还可以使用requried = false使参数成为可选参数,例如@RequestParam(value =“id”,required = false)

  10、什么是模型?

  Model再次是封装数据或输出以进行渲染的引用。始终创建模型并将其传递给Spring MVC中的视图。如果映射的控制器方法将Model作为方法参数,则Spring框架会自动将模型实例注入该方法。注入模型上设置的任何属性都将保留并传递给View。

  11、为什么控制器可测试工件?

  在Spring中,MVC控制器是可测试的工件,因为它们不直接与任何View技术相结合。它们只返回一个逻辑视图名称,可以轻松测试。

  12、spring mvc 有哪些组件?

  (1)前置控制器 DispatcherServlet。

  (2)映射控制器 HandlerMapping。

  (3)处理器 Controller。

  (4)模型和视图 ModelAndView。

  (5)视图解析器 ViewResolver。

  12、 @Autowired 和@Resource 的区别?

  @Autowired默认按照byType方式进行bean匹配,@Resource默认按照byName方式进行bean匹配

  @Autowired是Spring的注解,@Resource是J2EE的注解,这个看一下导入注解的时候这两个注解的包名就一清二楚了

  Spring属于第三方的,J2EE是Java自己的东西,因此,建议使用@Resource注解,以减少代码和Spring之间的耦合。

  13、什么是Spring的MVC框架?

  Spring 配备构建Web 应用的全功能MVC框架。Spring可以很便捷地和其他MVC框架集成,如Struts,Spring 的MVC框架用控制反转把业务对象和控制逻辑清晰地隔离。它也允许以声明的方式把请求参数和业务对象绑定。

  14、在渲染阶段,如何选择正确的视图?

  视图由Spring MVC中的ViewResolver选择。 当Controller向DispatcherServlet返回逻辑视图名称时,它会查询ViewResolver以查找正确的View。ViewResolver根据其实现将逻辑视图解析为物理资源,例如,jsP页面或FreeMarker模板。

  例如,InternalResourceViewResolver是一个默认的ViewResolver,用于转换逻辑视图名称,例如 使用前缀和后缀“hello”到“/WEB-INF/hello.jsp”。

“Spring MVC面试题及答案有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Spring MVC面试题及答案有哪些

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Spring MVC面试题及答案有哪些
    本篇内容介绍了“Spring MVC面试题及答案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、 MVC是设计模式的缩写,它代表...
    99+
    2023-06-02
  • spring cloud面试题及答案有哪些
    这篇“spring cloud面试题及答案有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“spring cloud面试题...
    99+
    2023-06-04
  • 2021的Spring Boot面试题及答案有哪些
    这篇文章主要讲解了“2021的Spring Boot面试题及答案有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“2021的Spring Boot面试题及答案有哪些”吧!  1、问:Spr...
    99+
    2023-06-27
  • Vue.js面试题及答案有哪些
    这篇文章主要介绍了Vue.js面试题及答案有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue.js面试题及答案有哪些文章都会有所收获,下面我们一起来看看吧。一、Vue.js基本问题1.1.Vue 响应式...
    99+
    2023-07-02
  • GO面试题及答案有哪些
    这篇文章主要介绍“GO面试题及答案有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“GO面试题及答案有哪些”文章能帮助大家解决问题。slice 扩容机制GO1.17版本及之前当新切片需要的容量ca...
    99+
    2023-07-04
  • SQL有哪些面试题及答案
    本篇内容主要讲解“SQL有哪些面试题及答案”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL有哪些面试题及答案”吧!到此,相信大家对“SQL有哪些面试题及答案...
    99+
    2024-04-02
  • Dubbo面试题及答案有哪些
    本篇内容介绍了“Dubbo面试题及答案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、Dubbo是什么  Dubbo是一个分布式...
    99+
    2023-06-04
  • PHP有哪些面试题及答案
    今天小编给大家分享一下PHP有哪些面试题及答案的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、什么事面向对象?主要特征是什...
    99+
    2023-07-02
  • ActiveMQ面试题及答案有哪些
    这篇文章主要介绍“ActiveMQ面试题及答案有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ActiveMQ面试题及答案有哪些”文章能帮助大家解决问题。    1、什么是 ...
    99+
    2023-06-04
  • Python有哪些面试题及答案
    本篇内容主要讲解“Python有哪些面试题及答案”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python有哪些面试题及答案”吧!Q1、Python中的列表和元组有什么区别?Q2、Python的...
    99+
    2023-07-02
  • Kubernetes面试题及答案有哪些
    本篇内容介绍了“Kubernetes面试题及答案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  1、什么是Kubernetes  K...
    99+
    2023-06-04
  • SpringBoot有哪些面试题及答案
    这篇文章主要介绍“SpringBoot有哪些面试题及答案”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot有哪些面试题及答案”文章能帮助大家解决问题。1. 什么是 Spring Bo...
    99+
    2023-07-05
  • Vue面试题及答案有哪些
    这篇文章主要介绍了Vue面试题及答案有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue面试题及答案有哪些文章都会有所收获,下面我们一起来看看吧。1. 简述 Vue 生命周期答题思路:Vue 生命周期是什...
    99+
    2023-07-04
  • Redux面试题及答案有哪些
    本文小编为大家详细介绍“Redux面试题及答案有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“Redux面试题及答案有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Redux是什么Redux是当今市场上...
    99+
    2023-06-04
  • Redis的面试题及答案有哪些
    这篇文章主要讲解了“Redis的面试题及答案有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis的面试题及答案有哪些”吧!说说Redis基本数据类型有哪些吧字符串:redis没有直...
    99+
    2023-06-27
  • Redis经典面试题及答案有哪些
    这篇文章主要讲解了“Redis经典面试题及答案有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis经典面试题及答案有哪些”吧! ...
    99+
    2023-03-09
    redis
  • Python常见面试题及答案有哪些
    这篇文章主要介绍“Python常见面试题及答案有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python常见面试题及答案有哪些”文章能帮助大家解决问题。  1...
    99+
    2024-04-02
  • css基础面试题及答案有哪些
    这篇文章主要讲解了“css基础面试题及答案有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css基础面试题及答案有哪些”吧!CSS是层叠样式表( Cascading Style Shee...
    99+
    2023-07-04
  • swoole相关面试题及答案有哪些
    这篇文章主要讲解了“swoole相关面试题及答案有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“swoole相关面试题及答案有哪些”吧!一、Swoole是什么?Swoole是一个PHP扩...
    99+
    2023-07-05
  • Web前端面试题及答案有哪些
    本篇内容主要讲解“Web前端面试题及答案有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Web前端面试题及答案有哪些”吧!js面试题1、js数据类型基本数据...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作