springboot 注解 --- @SpringBootApplication

 @SpringBootApplication 注解为 springboot 的主启动类上面的一个注解 , 是一个组合注解

@ SpringBootConfiguration 

@ EnableAutoConfiguration 

@ ComponentScan

 

 

@ SpringBootConfiguration

在上下文中声明Bean的定义 , 类似于 xml 配置文件 , 相当于 xml 方式的一种演变

@SpringBootConfiguration 和 @Configuration 注解功能相同 , SpringBootConfiguration 是专门为 SpringBoot 准备的注解

@Configuration 和它的好伙伴 @Bean 搭配使用

@Configuration 相当于把该类作为 spring 的 xml 版的容器 。@Configuration 注解的类中,使用 @Bean 注解标注的方法,会返回一个对象作为 spring 上下文中的 bean

标识一个可以被组件扫描器扫描的配置类

@ EnableAutoConfiguration

开启自动装配功能 , 为 @ComponentScan 找到主启动类的路径 , 配合主启动类上的@SpringBootConfiguration 注解 ( @SpringBootApplication 子注解 ) ,  最终将 标识 @ComponentScan ( 组合注解 --- @Service  @Repository   @Controller ) 注解的类 自动装配到 ioc 容器中来管理

@ ComponentScan

开启组件扫描 , 带有指定注解的类 ( 比如 : 标识 @Component 注解的类 ) , 装配到 bean中 , 放入 ioc 容器中进行管理 

@Component 下的子注解 : @Service  @Repository   @Controller

@ComponentScan 注解扫描的包路径由主启动类所在包位置决定

@ComponentScan 进行扫描时 , 配合 @EnableAutoConfiguration , 找到 Spring Boot 项目主程序启动类所在包的具体位置。找到之后会自动扫描当前启动类所在包下及其子包下的所有内容  ( 包下所有标识 @Componet 的类 ) , 并注册成 bean 对象

 

上面就说明了 : 为什么一个 @SpringBootApplication 注解 , 就可以扫描该启动类所在包下的所有标识 @Component 注解的类了

@ComponentScan 相当于 xml 配置中的 < context : component - scan base -package = " com.xxx.xxx " >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值