SpringBoot的YAML文件语法详解

1.基本语法
(1)
k:
(空格)k:(空格)v
表示一对键值对,空格必须有

server:
 port: 8081

(2)以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一层级的。

server:
 port: 8081
 address: 192.168.25.1

(3)属性和值也是大小敏感。

2.值的写法
(1)字面量:普通值(数字,字符串,布尔)
k:(空格)v:字面直接来写。
字符串默认不用加上单引号或则双引号。
“”:双引号不好转义字符串里面的特殊字符,特殊字符会作为本身想表示的意思。
name:"zhangsan\nlisi "
输出:
zhangsan
lisi
‘’:单引号会转义字符,特殊字符最总只是一个普通的字符串数据。
name:‘zhangsan \n lisi’
输出:zhangsan \n lisi

(2)对象、Map(属性和值)(键值对)
假如有一个Friends类,要用yaml文件给里面的字段赋值

@Component 
@ConfigurationProperties(prefix = "friends") 
public class Friends{
    private String lastName;
    private int age;
}
friends:
 lastName: zhangsan
 age: 20

行内写法:

friends: {lastName: zhangsan,age 20}

(3)数组(List、Set)
用-值表示数组中的一个元素

pets:
 - cat
 - dog
 - pig

行内写法

pets: [cat,dog,pig]

3.实例演示
配置文件:

person:
 lastName: zhangsan
 age: 22
 boss: true
 birth: 1998/11/16
 maps:
  k1:
   v1
  k2:
   v2
 lists:
  - 1
  - 2
  - 3
 dog:
  name: xiaohei
  age: 2

JavaBean:

/*
 *将配置文件中配置的每一个属性的值,映射到这个组件中
 * @ConfigurationProperties:告诉springboot将本类中的属性和配置文件中相关的配置进行绑定
 *     prefix = "person",配置文件中哪个下面的所有属性进行一一映射
 *
 * 只有这个组件是容器中的组件,才使用容器提供的功能
 */
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
    private String lastName;
    private Integer age;
    private Boolean boss;
    private Date birth;

    private Map<String,Object> maps;
    private List<Object> lists;
    private Dog dog;

4.注意
在pom.xml中要加入下面的依赖:

<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值