SpringBoot 2x 系列之(三)容器功能

容器功能

1. 组件添加

1.1 @Configuration结合@Bean注册组件

@Configuration 见 Spring.md 8.4.1 @Configuration

1.2 @Component、@Controller、@Service、@Repository

Spring.md 相关内容

1.3 @ComponentScan

Spring.md 8.4.2 @ComponentScan

1.4 @Import

Spring.md 8.4.5 @Import---多个配置类的读取注解配置

1.5 @Conditional

Spring.md 8.4.7 @Conditional

2. 原生配置文件引入

2.1 @ImportResource

Spring.md 8.4.8 @ImportResource

3. 配置绑定

将配置文件(properties等)中的配置对应绑定到JavaBean的属性中,SpringBoot提供了以下几种方式

只能跟SpringBoot固定的主配置文件(application.properties/yaml/yml)进行绑定

注:只有在容器中的组件,才会拥有SpringBoot提供的强大功能,所以必须将@ConfigurationProperties标注的类注册到容器中

3.1 @Component + @ConfigurationProperties

@Component和@ConfigurationProperties都要标注在JavaBean上

@ConfigurationProperties的prefix属性要传入配置文件中配置项的前缀

3.2 @EnableConfigurationProperties + @ConfigurationProperties

@EnableConfigurationProperties标注在配置类上,@ConfigurationProperties标注在JavaBean上

@ConfigurationProperties的prefix属性要传入配置文件中配置项的前缀,@EnableConfigurationProperties的value属性传入JavaBean的Class,可以是多个

这里的@EnableConfigurationProperties实现了两个功能:

  1. 开启Car与核心配置文件中配置项的配置绑定功能
  2. 把这个Car这个组件自动注册到容器中

多用于JavaBean在第三方jar包中的情况,因为这种情况下我们无法在第三方jar中的JavaBean上标注@Component

posted @ 2024-02-28 10:18  刘二水  阅读(31)  评论(0)    收藏  举报