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

类型对象的注册

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

id-maker:data-lists:- data-id: data1data-value: 0x0007000000000000- data-id: data2data-value: 0x004B000000000000L

下面是我的配置类

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

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

愿与诸君共进步,大量的面试题及答案还有资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系,可以微信搜索539413949获取,最后祝大家都能拿到自己心仪的offer