当前位置: 首页 > 面试题库 >

在简单的Spring Boot应用程序中使用了哪个ApplicationContext实现?

曹建明
2023-03-14
问题内容

我学过:

‘Application Context’的三种常用实现是-

FileSystemXmlApplicationContext−此容器从XML文件加载bean的定义。在这里,您需要向构造函数提供XML
bean配置文件的完整路径。

ClassPathXmlApplicationContext−此容器从XML文件加载bean的定义。在这里,您无需提供XML文件的完整路径,但需要正确设置CLASSPATH,因为此容器将在CLASSPATH中查找bean配置XML文件。

WebXmlApplicationContext −此容器从Web应用程序中加载带有所有bean定义的XML文件。

那么Spring Boot呢?我读过一些文章,如何获取ApplicationContext:

公共类A实现ApplicationContextAware {

private ApplicationContext applicationContext;

@Override
public void setApplicationContext(ApplicationContext applicationContext)

throws BeansException {
this.applicationContext = applicationContext;
}

}

但是在Spring Boot中到底使用了哪种应用上下文上下文呢?


问题答案:

Spring Boot应用程序的入口点是一个SpringApplication对象。您可以通过其setApplicationContextClass(Class)方法选择要使用的实现。它的javadoc状态

设置ApplicationContext将要创建的Spring的类型。如果未指定,则默认DEFAULT_SERVLET_WEB_CONTEXT_CLASS为基于Web的应用程序AnnotationConfigApplicationContext或非基于Web的应用程序。

如果您不使用该方法,它将列出默认值。

org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext

用于基于Web的应用程序和

org.springframework.context.annotation.AnnotationConfigApplicationContext

用于非基于Web的应用程序。

响应式Web环境也有默认设置。



 类似资料:
  • -这个容器从XML文件加载bean的定义。这里不需要提供XML文件的完整路径,但需要正确设置类路径,因为这个容器将在类路径中看到bean配置XML文件。 -这个容器从web应用程序中加载带有所有bean定义的XML文件。 Spring靴怎么样?我读过一些文章,如何获得ApplicationContext:

  • 我是kubernetes的新手,需要在openshift平台上使用k8s confimap将springboot应用程序的属性文件外部化。我已将属性文件保存在git repo中,作为“greeter.message=Spring Bootmyapplication.properties已在库伯内特斯上挂载为卷!”并使用“oc create confimap myconfig--from-file=

  • 本文向大家介绍简单了解SpringBoot HATEOAS使用方法,包括了简单了解SpringBoot HATEOAS使用方法的使用技巧和注意事项,需要的朋友参考一下 REST风格简介 介绍HATEOAS之前先简单介绍一下REST,REST 是 Representational state transfer 的缩写,翻译过来的意思是表达性状态转换。REST是一种架构的风格 Richardson M

  • 问题内容: 我有一个用简单的Spring编写的ReSTFul API(没有Spring Boot,没有花哨的东西!)。我需要在其中实现Swagger。到目前为止,Internet上的每个页面都以令人困惑的配置和膨胀的代码(使我根本无法移植) 有没有人有一个示例项目(或一组详细的步骤)可以帮助我实现这一目标?特别是,我正在寻找使用swagger-springmvc的良好示例。我知道它有“样本”,但是

  • 有没有人有一个样例项目(或者一组详细的步骤)可以帮助我完成这件事?特别是,我正在寻找一个使用swagger-springMVC的好样例。我知道它有“示例”,但最多,深奥的代码是令人气馁的。 我必须澄清,我不是在寻找“为什么大摇大摆的简直就是最好的”。我没有使用(并且对于我当前的任务将不会使用)Spring引导或这样的。

  • 我有Kafka Streams java应用程序启动并运行。我试图使用KSQL创建简单的查询,并使用Kafka流来实现复杂的解决方案。我希望将KSQL和Kafka流作为Java应用程序运行。 我打算通过https://github.com/confluentinc/ksql/blob/master/ksqldb-examples/src/main/java/io/confluent/ksql/em