前言:
大体思路是,建立一个对象,把配置文件的值都放到对象的属性里。
这样,有两步。先是制定映射规则,再新建对象填入属性。
(0)配置文件
(1)制定映射规则
新建一个类,加上@ConfigurationProperties() 注解。这样,就使用了boot的映射规则:按名称相等来映射。
图里加上了@Data来自动生成get、set方法,boot规定set方法必须有。
1.名称不用完全相等,驼峰式和下划线可以互相识别。
2.@ConfigurationProperties注解有几个值可以填:
@ConfigurationProperties(
ignoreInvalidFields = false, // 是否无视掉,解析出错的配置文件字段。不无视会怎么样?报错
ignoreUnknownFields = true, // 是否无视掉,class文件里少写的字段
prefix = "my.conf" // 变量前缀 或者说 命名空间,免得查找整个配置文件
)
prefix 是默认选项,图中虽然没写,但用的就是prefix
(2)生成类的实例对象,并填入属性值
spring里生成对象可以只加上@Component、@Configuration或@Service注解。
另外,由他生成对象的同时,也会自动填值。(因为打了@ConfigurationProperties这个注解)
这样就可以了,从spring拿到的,就是填好值的实例。
springboot2代码
蓝奏云:https://wws.lanzous.com/ib3hnjvnjre