springboot~ConfigurationProperties注解配置集合对象

ConfigurationProperties主要用来对格式化配置信息进行整理,将多个相关的配置信息整理到一个类里,这个类可以被@ConfigurationProperties修饰,如果希望它启用,需要添加@Configuration这些注解,如果没有添加@Configuration注解,那么在启动类上添加@EnableConfigurationProperties注解也是一样的,都是将你的@ConfigurationProperties配置加载到IOC容器里。

类型对象的注册

下面有我的配置信息,一个复杂对象,并且它是集合对象

id-maker:
  data-lists:
    - data-id: data1
      data-value: 0x0007000000000000
    - data-id: data2
      data-value: 0x004B000000000000L

下面是我的配置类

@Data
@Configuration
@ConfigurationProperties(prefix = "id-maker", ignoreUnknownFields = false)
public class IdMakerProperties {
    /**
     * 对应配置文件的节点名称.
     */
    public List<DataList> dataLists;

    @Data
    public static class DataList {
        private String dataId;
        private String dataValue;
    }
}

在controller里使用它时,可以使用@Autowired进行注册,这样我们的集合对象就对加载进来了,如图
1

posted @ 2020-08-27 15:54  张占岭  阅读(3198)  评论(1编辑  收藏  举报