一文搞懂springboot的启动和自动装配流程
Spring Boot启动流程大致如下:
- 启动类上的
@SpringBootApplication
注解标识这是一个Spring Boot应用。 @SpringBootApplication
是一个复合注解,包含@SpringBootConfiguration
(表示这是一个Spring Boot配置类)、@EnableAutoConfiguration
(开启自动配置)和@ComponentScan
(组件扫描)。- 由于开启了自动配置,
@EnableAutoConfiguration
会让Spring Boot根据类路径上的jar依赖自动配置项目。 - Spring Boot在内部定义了很多自动配置类,如果项目中缺少相应的依赖或者配置,这些自动配置类不会生效。
- 如果我们添加了自定义配置类,并用
@Configuration
注解标记,这个配置类也会被加载。 - 最后,Spring容器会根据
@ComponentScan
指定的包路径以及通过@Component
、@Service
、@Repository
等注解标记的类创建Bean。
以下是一个简单的Spring Boot启动类示例:
@SpringBootApplication
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
在这个例子中,@SpringBootApplication
开启了自动配置,并通过SpringApplication.run
方法启动了Spring Boot应用。
评论已关闭