Spring Boot(20 题)
xiangliheart
xiangliheart
发布于 2021-05-01 / 0 阅读 / 0 评论 / 0 点赞

Spring Boot(20 题)

  1. Spring Boot 核心作用?

    简化配置、内置服务器、自动依赖、快速开发。

  2. 核心四大特性?

    自动配置、起步依赖、内嵌容器、监控 Actuator。

  3. 自动配置原理?

    @EnableAutoConfiguration + SPI 加载自动配置类,条件注解按需生效。

  4. 条件注解有哪些?

    @ConditionalOnClass、@ConditionalOnMissingBean、@ConditionalOnProperty。

  5. Starter 是什么?

    封装好的依赖组合,一键引入整套依赖。

  6. 自定义 Starter 步骤?

    写配置类→配置属性→META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration 配置 SPI。

  7. 配置文件 yml 和 properties 区别?

    yml 层级清晰,更简洁;properties 优先级更高。

  8. 多环境配置怎么切换?

    application-dev.yml、application-prod.yml,spring.profiles.active 指定。

  9. @ConfigurationProperties 配置绑定?

    把 yml 配置自动绑定到实体类。

  10. Spring Boot 内嵌什么容器?

    默认 Tomcat,可切换 Jetty、Undertow。

  11. Actuator 作用?

    监控健康状态、内存、线程、接口、配置信息。

  12. 怎么关闭自动配置?

    @EnableAutoConfiguration (exclude = xxx.class)。

  13. Spring Boot 全局异常和 MVC 区别?

    Boot 全局异常统一接管所有接口异常。

  14. 异步任务怎么实现?

    @EnableAsync + @Async。

  15. 定时任务怎么实现?

    @EnableScheduling + @Scheduled (cron = "")。

  16. 怎么整合 Redis?

    引入 spring-boot-starter-data-redis,直接使用 RedisTemplate。

  17. Spring Boot 2.x 和 3.x 区别?

    3.x 最低 JDK17,部分包更名,底层升级。

  18. Bean 和配置类加载顺序?

    先启动引导类→加载自动配置→扫描自定义 Bean。

  19. 怎么排除自动配置类?

    启动类注解 exclude 排除。

  20. Spring Boot 配置优先级?

    命令行 > 外部配置 > yml > properties。


评论