@ConfigurationProperties注意点

  • @ConfigurationProperties 通过setter和构造器来设置field的值, 并且支持级联绑定属性

  • 配置文件中的属性个数可以和pojo中的field个数不一样, 如果这样那么field就使用默认值或是初始值

  • 要想使@ConfigurationProperties生效, 可以通过@Component, 或是在配置类上使用@EnableConfigurationProperties, 并且指定value来使properties文件的值自动注入到对应pojo的属性中(同时会将该pojo注入到ioc)

  • @ConfigurationProperties 不能与@EnableConfigurationProperties 一起标注在同一个类上

  • 可以在@ConfigurationProperties标注的类上使用@Validated在来校验field的绑定

  • 如果一个类标明了@ConfigurationProperties, 不会对内部类生效, 需要另外配置(因为内部类和外部类编译后是两不同的类)

  • @NestedConfigurationProperties没有任何实际功能, 用于表示@ConfigurationProperties标注的类中的field

    不是一个单一的值, 常与有初始值的复杂对象一起出现

  • @ConfigurationProperties可以和@PropertySource一起使用, 这样就可以不用一个一个@Value

posted @ 2020-05-02 21:22  CyberPelican  阅读(1188)  评论(0编辑  收藏  举报