Spring Boot面试必问:启动流程

本文深入探讨Spring Boot的面试重点,包括启动流程和自动配置原理。启动流程涉及run方法、配置环境加载、应用上下文创建以及Spring容器的初始化。自动配置通过在META-INF/spring.factories文件中查找配置类并加载到Spring容器中。核心注解如@SpringBootApplication、@EnableAutoConfiguration等在组件扫描和Bean装配中起关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 面试提问

1.1 Spring Boot启动流程

???面试官:说说SpringBoot启动流程吧

??

  1. 首先从main找到run()方法,在执行run()方法之前new一个SpringApplication对象
  2. 进入run()方法,创建应用监听器SpringApplicationRunListeners开始监听
  3. 然后加载SpringBoot配置环境(ConfigurableEnvironment),然后把配置环境(Environment)加入监听对象中
  4. 然后加载应用上下文(ConfigurableApplicationContext),当做run方法的返回对象
  5. 最后创建Spring容器,refreshContext(context),实现starter自动化配置和bean的实例化等工作。

1.2 SpringBoot自动装配

???面试官:说说SpringBoot自动配置的原理

?? :通过@EnableAutoConfiguration注解在类路径的META-INF/spring.factories文件中找到所有的对应配置类,然后将这些自动配置类加载到spring容器中。

二 知识点详解

2.1 SpringBoot核心注解:

@SpringBootApplication注解是Spring Boot的核心注解,它

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值