yaml的简单了解及运用

导读:本篇文章讲解 yaml的简单了解及运用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

目录

理解

基本语法

简单的使用

 maven依赖

理解

        YAML 是 “YAML Ain’t a Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:”Yet Another Markup Language”(仍是一种标记语言)。

        YAML 的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件、倾印调试内容、文件大纲(例如:许多电子邮件标题格式和YAML非常接近)。

YAML 的配置文件后缀为 .yml,如:runoob.yml 。

基本语法

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • ‘#’表示注释

数据类型

YAML 支持以下几种数据类型:

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
  • 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
  • 纯量(scalars):单个的、不可再分的值

简单的使用

application.yaml的编写可以在实体类中应用,可以代替了application.properties的用法

#普通的key-value
name: zhao

#对象
student1:
  name: zhao
  age: 3

#行内写法
student2: {name: zhao,age: 5}

#数组
pets:
  - cat
  - dog
  - pig

pets2: [cat,dog,pig]


#给实体类Person赋值
person:
  name: zhao${random.uuid}   #${random.uuid} 使用了SPEL 给name后面加上一个随机的uuid
  age: ${random.int}		#${random.int} 使用了SPEL 随机生成一个数
  happy: false
  birth: 2019/11/02
  maps: {k1: v1,k2: v2}
  lists:
    - code
    - music
    - girl
  dog:
    name: 旺财
    age: 3

实体类Prerson.class

@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true) //链式写法
@Component
@ConfigurationProperties(prefix = "person") //引用了yaml中的person类 给每个对应的属性赋值
public class Person {
    private String name;
    private Integer age;
    private Boolean happy;
    private Date brith;
    private Map<String,Object> maps;
    private List<Object> lists;
    private Dog dog;
}

 maven依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74789.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!