yml的使用
值的写法
- 字面量:(数字,字符串,布尔值等)
以k:v的形式来写
补充:
字符串可以不加双引号或单引号
双引号和单引号的区别:
双引号: 不会转义转义字符(name: "zhangsan \n 18" 输出结果:zhangsan "换行" 18)
单引号:会转义转义字符(name: "lisi \n 20" 输出结果:lisi \n 20)
- 对象,Map
常规写法:
man:
name: zhangsan
age: 18
行内写法:
man: {name: zhangsan,age: 18}
- 数组,List,Set
常规写法:
animals:
- cat
- dog
- bird
行内写法:
animals: [cat,dog,bird]
properties配置文件编码问题
乱码解决方法:
配置文件占位符
随机数
my:
value: ${random.value}
int: ${random.int}
long: ${random.long}
uuid: ${random.uuid}
int.less.than.ten: ${random.int(10)}
int.in.range=${random.int[1024,65536]}
备注:
int.in.range=${random.int[1024,65536]}意思是1024≤随机值<65536
[ ]可以是其它任意符号
获取配置文件值
#properties编码要记得改,在settings中file encodings 改写成utf-8并改写成转化成ascII
person.name=张三${random.uuid}
person.age=${random.int} #获取随机数
person.boss=true
person.maps.k1=1
person.maps.k2=2
person.list=a,b,c
person.dog.name=小旺,主人是${person.name} #获取之前的值
person.dog.age=${person.DogAge:3} #没有该属性,指定一个默认值