什么是 YAML?和 Spring Boot 有什么关系?( 二 )


@Configuration@ConfigurationProperties(prefix = "my.person")@Getter@Setterpublic class Person {private String name;private int age;private boolean man;}当然也可以使用 key:{key1: value1, key2: value2, ...}的形式,如下:
person: {name: 陈皮, age: 18, man: true}数组
可以用短横杆加空格 -开头的行组成数组的每一个元素,如下的address字段:Spring Boot 学习笔记分享给你 。
person:name: 陈皮age: 18man: trueaddress:- 深圳- 北京- 广州也可以使用中括号进行行内显示形式,如下:
person:name: 陈皮age: 18man: trueaddress: [深圳, 北京, 广州]在代码中引入方式如下:
@Configuration@ConfigurationProperties(prefix = "person")@Getter@Setter@ToStringpublic class Person {private String name;private int age;private boolean man;private List<String> address;}如果数组字段的成员也是一个数组,可以使用嵌套的形式,如下:
person:name: 陈皮age: 18man: trueaddress: [深圳, 北京, 广州]twoArr:-- 2- 3- 1-- 10- 12- 30@Configuration@ConfigurationProperties(prefix = "person")@Getter@Setter@ToStringpublic class Person {private String name;private int age;private boolean man;javaprivate List<String> address;private List<List<Integer>> twoArr;}如果数组成员是一个对象,则用如下两种形式形式:
childs:-name: 小红age: 10-name: 小王age: 15childs: [{name: 小红, age: 10}, {name: 小王, age: 15}]4、文本块如果你想引入多行的文本块,可以使用|符号,注意在冒号:和 |符号之间要有空格 。最新面试题整理好了,点击Java面试库小程序在线刷题 。
person:name: |Hello Java!!I am fine!Thanks! GoodBye!它和加双引号的效果一样,双引号能转义特殊字符:
person:name: "Hello Java!!nI am fine!nThanks! GoodBye!"5、显示指定类型有时我们需要显示指定某些值的类型,可以使用 !(感叹号)显式指定类型 。!单叹号通常是自定义类型,!!双叹号是内置类型,例如:
# 指定为字符串string.value: !!str HelloWorld!# !!timestamp指定为日期时间类型datetime.value: !!timestamp 2021-04-13T02:31:00+08:00内置的类型如下:

  • !!int:整数类型
  • !!float:浮点类型
  • !!bool:布尔类型
  • !!str:字符串类型
  • !!binary:二进制类型
  • !!timestamp:日期时间类型
  • !!null:空值
  • !!set:集合类型
  • !!omap,!!pairs:键值列表或对象列表
  • !!seq:序列
  • !!map:散列表类型
6、引用引用会用到 &锚点符合和 星号符号,&用来建立锚点,<< 表示合并到当前数据, 用来引用锚点 。最新面试题整理好了,点击Java面试库小程序在线刷题 。
【什么是 YAML?和 Spring Boot 有什么关系?】xiaohong: &xiaohongname: 小红age: 20dept:id: D15D8E4F6D68A4E88E<<: *xiaohong上面最终相当于如下:
xiaohong:name: 小红age: 20dept:id: D15D8E4F6D68A4E88Ename: 小红age: 20还有一种文件内引用,引用已经定义好的变量,如下:
base.host: https://chenpi.comadd.person.url: ${base.host}/person/add7、单文件多配置可以在同一个文件中,实现多文档分区,即多配置 。在一个yml文件中,通过 — 分隔多个不同配置,根据spring.profiles.active 的值来决定启用哪个配置
#公共配置spring:profiles:active: pro # 指定使用哪个文档块#开发环境配置spring:profiles: dev # profiles属性代表配置的名称server:port: 8080#生产环境配置spring:profiles: proserver:port: 8081
来源:
blog.csdn.net/chenlixiao007




推荐阅读