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进行注册,这样我们的集合对象就对加载进来了,如图
愿与诸君共进步,大量的面试题及答案还有资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系,可以微信搜索539413949获取,最后祝大家都能拿到自己心仪的offer