springboot启动的原理
Spring Boot的启动原理,主要包括以下几个关键步骤和组件:
1.加载配置文件和启动类
当Spring Boot项目启动时,首先会读取项目中的配置文件,如application.yml和application.properties。这些配置文件指定了项目的启动端口号、数据库连接等配置信息。同时,Spring Boot会加载带有@SpringBootApplication注解的启动类。这个注解是一个复合注解,包含@EnableAutoConfiguration、@SpringBootConfiguration和@ComponentScan,分别负责自动配置、标记为Spring配置类以及自动扫描并加载Spring Bean
2.初始化spring容器
加载完配置文件与启动类后,Spring Boot通过Spring框架初始化Spring容器。这包括根据配置文件中的信息注册Bean、创建Bean实例并完成依赖注入等操作
3.开启自动配置功能
Spring Boot会自动扫描项目中的类,如果这些类中有@Configuration注解,Spring Boot将会读取这些类中被@Bean注解标记的方法来生成Bean实例并注入到Spring容器中。此外,Spring Boot还支持自动配置,它会根据项目中添加的jar依赖来自动配置应用程序,例如,如果项目中包含了spring-boot-starter-web依赖,Spring Boot将配置应用程序使用Tomcat作为服务器并加入基本的MVC支持
4.启动内嵌的web服务器tomcat
Spring Boot内置了常见的Web服务器如Tomcat和Jetty。当应用程序启动时,它会根据配置文件中的信息自动创建Web容器,并将Spring容器注册到Web容器中,使得Spring Boot应用程序可以直接以Web应用程序的形式运行
5.启动springboot应用程序
关键组件和设计模式
- @SpringBootApplication:这是一个复合注解,包含@EnableAutoConfiguration、@SpringBootConfiguration和@ComponentScan。它标识了应用的启动类,负责自动配置、标记为Spring配置类以及自动扫描并加载Spring Bean1。
- @EnableAutoConfiguration:这个注解通过@Import引入了AutoConfigurationImportSelector,负责从META-INF/spring.factories文件中加载自动配置类1。
- @ComponentScan:自动扫描并加载符合条件的Spring Bean1。
通过这些步骤和组件,Spring Boot能够快速构建和启动一个独立的、生产级别的Spring应用。
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号