星海

Spring · 单选题 · 第 56 题

Java 后端开发面试 · 第 56 题

Spring Boot 3 的自动配置是如何生效的?

  1. A启动时扫描 classpath 上所有 jar 包里的全部类,把它们统统实例化成 Bean 放进容器
  2. B读取 AutoConfiguration.imports 中登记的配置类,再由条件注解决定是否生效
  3. C必须在 XML 配置文件里逐个声明需要的自动配置类,Spring Boot 本身不会自动发现它们
  4. D在运行时根据配置文件动态生成 Java 源码,再即时编译成配置类,最后加载进容器里

答案

B B. 读取 AutoConfiguration.imports 中登记的配置类,再由条件注解决定是否生效

解析

@SpringBootApplication 包含 @EnableAutoConfiguration,它会读取各 jar 包中 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 列出的配置类。条件注解检查 classpath 上有没有某个类、用户是否已经定义了同类 Bean、配置项是否开启等。Spring Boot 2.7 之前主要用 spring.factories 登记,3.0 起只认 imports 文件。

在线刷这套题:即时判分、错题本、闪卡复习,不用登录就能练。