YAML语法

作者: 愤怒的老照 | 来源:发表于2020-03-06 10:59 被阅读0次

    了解Yaml用法,首先创建两个实例

    Person:
    @Data
    @Component
    @ConfigurationProperties(prefix = "person")
    @PropertySource("classpath:person.properties")
    public class Person {
        private String lastName;
        private Integer age;
        private Boolean boss;
        private Map<String,Object> maps;
        private List<Object> lists;
        private Dog dog;
    }
    Dog:
    @Data
    public class Dog {
        private String name;
        private Integer age;
    }
    
    

    一般的properties配置:

    person.age=12
    person.boss=false
    person.last-name=zhangsan
    person.maps.k1=v1
    person.maps.k2=v2
    person.lists=a,b,c
    person.dog.name=wanghuahu
    person.dog.age=15
    

    yaml配置:

    person:
      last-name: wanghuahua
      age: 18
      boss: false
      birth: 2017/12/12
      maps:
        k1: v1
        k2: v2
      lists:
        - lisi
        - zhaoliu
      dog:
        name: wangwang
        age: 2
    
    

    1、基本语法

    k:(空格)v:表示一堆键值对(空格必须有);

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

    server:
        port: 9000
        path: /hello 
    

    属性和值也是大小写敏感

    2、值的写法

    字面量:普通的值(数字,字符串,布尔)

    k: v:字面直接来写;

    字符串默认不用加上单引号或者双引号

    "***":双引号 不会转义字符串里的特殊字符;特殊字符会作为本身想要表示的意思,与不带引号意思相同

    name:"zhangsan\n lisi" #输出:zhangsan换行 lisi
    

    '***':单引号 会转义特殊字符,特殊字符最终只是一个普通的字符串数据

    name:'zhangsan\n lisi' #输出:zhangsan\n lisi
    

    对象、Map(属性和值)键值对

    k :v :在下一行来写对象的属性和值的关系;注意空格控制缩进

    对象还是k:v的方式

    frends:
        lastName: zhangsan
        age: 20 
    

    行内写法

    friends: {lastName: zhangsan,age: 18} 
    

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

    pets:
     ‐ cat
     ‐ dog
     ‐ pig 
    

    行内写法

    pets: [cat,dog,pig] 
    

    相关文章

      网友评论

        本文标题:YAML语法

        本文链接:https://www.haomeiwen.com/subject/aybvrhtx.html