首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
物联网
›
物联网
›
Spring Boot启动过程?
返回列表
发新帖
Spring Boot启动过程?
[复制链接]
发表于 2025-10-24 19:55:54
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
目次
1. 启动入口
2. SpringApplication 初始化
3. 预备环境
4. 创建应用上下文(ApplicationContext)
5. 预备应用上下文
6. 革新应用上下文
7. 启动 Web
服务器
(若为 Web 应用)
8.
发布
ApplicationStartedEvent 变乱
9. 实行 Runner
10.
发布
ApplicationReadyEvent 变乱
1. 启动入口
Spring Boot 应用的启动从 main 方法开始,main 方法通常位于一个带有 @SpringBootApplication 注解的类中。@SpringBootApplication 是一个组合注解,它包罗了 @Configuration(标识该类为设置类,可界说 Bean 等设置)、@EnableAutoConfiguration(开启自动设置
功能
,依据项目依靠自动设置相干组件)和 @ComponentScan(用于扫描指定包及其子包下的组件,如 @Component、@Service、@Repository、@Controller 等注解标注的类)。示例
代码
如下:
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}
复制
代码
2. SpringApplication 初始化
SpringApplication.run() 方法会创建一个 SpringApplication 实例,并调用其 run 方法。该实例的初始化过程包罗以下关键步调:
推断应用范例
:依据类路径上的依靠来判定应用范例,好比包罗 spring-boot-starter-web 依靠则推断为 Servlet 应用,若包罗相干相应式编程依靠则推断为 Reactive 应用等。
设置初始化器(Initializers)
:通过 SpringFactoriesLoader 从 META-INF/spring.factories 文件中加载并应用 ApplicationContextInitializer。这些初始化器可在应用上下文创建前对其举行定制化设置,比方设置属性源等。
设置监听器(Listeners)
:同样借助 SpringFactoriesLoader 加载并应用 ApplicationListener,用于监听应用启动过程中的各类变乱,如环境预备完成变乱、应用上下文初始化变乱等,以便在差异阶段实行相应逻辑。
推断主应用类
:通过堆栈跟踪的方式推断出主应用类,即包罗 main 方法且带有 @SpringBootApplication 注解的类。
3. 预备环境
在 run 方法中,Spring Boot 会举行应用环境(Environment)的预备
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告
回复
使用道具
举报
返回列表
大连全瓷种植牙齿制作中心
+ 我要发帖
×
登录参与点评抽奖,加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表