核心注解
-
@SpringBootApplication:组合注解,包含了
@SpringBootConfiguration
、@EnableAutoConfiguration
和@ComponentScan
。 -
@EnableAutoConfiguration:告诉Spring Boot基于类路径设置、其他bean和各种属性设置自动配置。
-
@ComponentScan:扫描并注册标有
@Component
、@Service
、@Repository
等注解的bean。 -
@Configuration:标记配置类,可以使用
@Bean
注解定义Bean。 -
@Bean:在方法上使用,表明该方法产生一个bean,并交由Spring容器管理。
自动装配过程
-
启动类运行:当运行Spring Boot应用的主类时,
@SpringBootApplication
注解启动Spring的自动配置机制。 -
激活自动配置:
@EnableAutoConfiguration
注解告诉Spring Boot开始基于类路径下的jar依赖、Spring Beans和各种属性设置自动配置。 -
配置类的加载:Spring Boot根据条件注解(如
@ConditionalOnClass
)和spring.factories
文件中列出的配置来加载配置类。 -
条件评估:在配置类中,通过条件注解确定哪些配置有效,确保只有符合当前环境的配置被加载。
-
Bean的创建与注册:配置类中标注
@Bean
的方法被调用,创建Spring Bean,并将其注册到Spring上下文中。 -
完成注入:最后,Spring容器根据需要将这些Bean注入到应用中的其他部分。