SpringBoot启动方法有哪些具体步骤?
- 内容介绍
- 文章标签
- 相关推荐
本文共计661个文字,预计阅读时间需要3分钟。
@[TOC]聊聊SpringBoot的启动方法SpringBootApplication注解组成我们了解到SpringBootApplication注解下有三个注解组成:- @SpringBootConfiguration:注解中包含@Configuration,表示被注解的类被添加到IoC容器中- @EnableAutoConfiguration:自动配置- @ComponentScan:组件扫描
@SpringBootConfiguration:注解中包含@Configuration,被修饰的类会被添加到IoC容器中。
@[TOC]
聊聊SpringBoot的启动方法
SpringBootApplication注解组成
我们了解到SpringBootApplication注解下有三个注解组成:
@SpringBootConfiguration:注解中有@Configuration,被修饰的类添加到IOC容器中
@EnableAutoConfiguration:
- @AutoConfigurationPackage:定义自动扫描的包
- @Import({AutoConfigurationImportSelector.class}:META-INF/spring.factories定义的bean添加到IOC容器中
@ComponentScan:包扫描
那么我们今天看一下SpringBootApplication的run()方法是怎么初始化的,
关键代码:
new SpringApplication(primarySources).run(args);构造SpringApplication对象
primarySources就是我们的项目启动主类
也就是先进行实例化SpringApplication类,然后调用它的run()方法
构造方法中对属性填充,具体是设置项目启动类,设置应用类型,设置初始化器,也就是ApplicationContextInitializer的实现类,设置监听器,也就是ApplicationListener的实现类,设置mainApplicationClass属性,也就是启动类了
这里都用到了getSpringFactoriesInstances()方法进行加载类实例,方法中加载META-INF/spring.factories下的类名的数组,然后根据定义的类名数组进行实例化,最后对实例化对象进行排序并返回实例化对象集合
run()方法的具体逻辑
实例化完SpringApplication类后就进行run()方法的调用了,具体业务逻辑:
总结
SpringBootApplication的run()方法中的内容还是比较多的,主要分为实例化SpringApplication对象和执行它的run()方法,run()方法中步骤很多,主要是将启动类加入容器中,方便自动配置
本文共计661个文字,预计阅读时间需要3分钟。
@[TOC]聊聊SpringBoot的启动方法SpringBootApplication注解组成我们了解到SpringBootApplication注解下有三个注解组成:- @SpringBootConfiguration:注解中包含@Configuration,表示被注解的类被添加到IoC容器中- @EnableAutoConfiguration:自动配置- @ComponentScan:组件扫描
@SpringBootConfiguration:注解中包含@Configuration,被修饰的类会被添加到IoC容器中。
@[TOC]
聊聊SpringBoot的启动方法
SpringBootApplication注解组成
我们了解到SpringBootApplication注解下有三个注解组成:
@SpringBootConfiguration:注解中有@Configuration,被修饰的类添加到IOC容器中
@EnableAutoConfiguration:
- @AutoConfigurationPackage:定义自动扫描的包
- @Import({AutoConfigurationImportSelector.class}:META-INF/spring.factories定义的bean添加到IOC容器中
@ComponentScan:包扫描
那么我们今天看一下SpringBootApplication的run()方法是怎么初始化的,
关键代码:
new SpringApplication(primarySources).run(args);构造SpringApplication对象
primarySources就是我们的项目启动主类
也就是先进行实例化SpringApplication类,然后调用它的run()方法
构造方法中对属性填充,具体是设置项目启动类,设置应用类型,设置初始化器,也就是ApplicationContextInitializer的实现类,设置监听器,也就是ApplicationListener的实现类,设置mainApplicationClass属性,也就是启动类了
这里都用到了getSpringFactoriesInstances()方法进行加载类实例,方法中加载META-INF/spring.factories下的类名的数组,然后根据定义的类名数组进行实例化,最后对实例化对象进行排序并返回实例化对象集合
run()方法的具体逻辑
实例化完SpringApplication类后就进行run()方法的调用了,具体业务逻辑:
总结
SpringBootApplication的run()方法中的内容还是比较多的,主要分为实例化SpringApplication对象和执行它的run()方法,run()方法中步骤很多,主要是将启动类加入容器中,方便自动配置

