spring框架提供了两张解析yml文件的语法,YamlPropertiesFactoryBean会把yml文件解析城properties(放到environment中),YamlMapFactoryBean会把yml文件解析城一个map。
springboot中默认为YamlPropertiesFactoryBean。
基本用法:
environments:
dev:
url: http://dev.bar.com
name: Developer Setup
prod:
url: http://foo.bar.com
name: My Cool App
等同于以下properties配置:
environments.dev.url=http://dev.bar.com
environments.dev.name=Developer Setup
environments.prod.url=http://foo.bar.com
environments.prod.name=My Cool App
list:
my:
servers:
- dev.bar.com
- foo.bar.com
等同于:
my.servers[0]=dev.bar.com
my.servers[1]=foo.bar.com
map:
bean.strstrmap[key1]: value1
bean.strstrmap[key2]: value2
bean.strobjmap[key2]:
value2Prop1: xxx
value2Prop2: yyy
注释
#comment
--- 表示一个文档的开始
可以用于定义不同的profile
server:
address: 192.168.1.2
---
spring:
profiles: dev
server:
address: 127.0.0.1
---
spring:
profiles: stg
server:
address: 192.168.1.3
注意:
有些用法不可以使用@Value,必须要使用ConfigurationProperties才可以。