1.当我们启动一个SpringBoot项目的时候,入口程序就是main方法,而在main方法中就执行了一个run方法。
@SpringBootApplication
public class StartApp {
public static void main(String[] args) {
// test
SpringApplication.run(StartApp.class);
}
}
public static ConfigurableApplicationContext run(Class<?>[] primarySources, String[] args) {
// 创建了一个SpringApplication对象,并调用其run方法
// 1.先看下构造方法中的逻辑
// 2.然后再看run方法的逻辑
return new SpringApplication(primarySources).run(args);
}
2.SpringApplication.run方法
public static ConfigurableApplicationContext run(Class<?> primarySource, String... args