Springboot 源码分析 —— 总纲

本文主要分析Springboot的源码,探讨其启动流程,包括初始化SpringApplication实例,设置属性,查找和设置配置文件信息,以及调用run方法启动应用程序。通过源码解析,有助于快速定位问题并进行项目扩展。
摘要由CSDN通过智能技术生成



1 问题来源

  • Spring 一个分层的 JavaSE/EE 一栈式轻量级开源框架
  • Springboot 设计目的是用来简化新 Spring 应用的初始搭建以及开发过程
  • 熟悉 Springboot 整体的启动流程,可以快速定位项目出错的原因,并能够更好的对项目做一些扩展


2 源码分析

  • Springboot 2.1.1.RELEASE 源码
  • springboot 项目的入口是 main 函数
//这个args主要可以是传一些配置参数,如:server.port,spring.active.profile等
//一般默认为 null 即可
public static void main(String[] args) {
   
    SpringApplication.run(SpringBootDependsApplication.class, args);
}
//程序走到这,首先要初始化 SpringApplication 类,之后调用此实例的 run() 方法
public static ConfigurableApplicationContext run(Class<?>[] primarySources, String[] args) {
   
    return (new SpringApplication(primarySources)).run(args);
}

2.1 初始化 SpringApplication 实例时,设置的一些属性

  • 初始化 SpringApplication 实例时,会设置一些默认的属性
  • 获取并创建 ApplicationContextInitializer
  • 获取并创建 ApplicationListener
public SpringApplication(ResourceLoader resourceLoader, Class... primarySources) {
   
	this
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值