24.6.1. 加载YAML
Spring框架提供两个便利的类用于加载YAML文档,YamlPropertiesFactoryBean
会将YAML加载为Properties
,YamlMapFactoryBean
会将YAML加载为Map
。
例如,下面的YAML文档:
会被转化为如下属性:
YAML列表被表示成使用[index]
间接引用作为属性keys的形式,例如下面的YAML:
将会转化到这些属性:
使用Spring DataBinder
工具集绑定这些属性(这是@ConfigurationProperties
做的事)时,你需要确保目标bean有个java.util.List
或Set
类型的属性,并且需要提供一个setter或使用可变的值初始化它,比如,下面的代码将绑定之前的属性:
注 当多个位置配置了列表,重写通过替换整个列表发生。在之前的例子里,当在几个地方定义了my.servers
,来自PropertySource
拥有更高优先级的整个列表会重写那个列表的任何其它的配置。可以使用逗号分隔的列表和YAML列表来完全重写列表的内容。
最后更新于