SpringBoot中yanl的占位符
person:
last-name: 张三_${random.uuid}
age: ${random.int(20,100)}
hobbies: [篮球,跑步,吉他]
map: {k1: 你好,k2: 世界}
dog:
name: ${person.hello:张三}_狗东西
# name: ${person.last_name}_狗东西
age: 10
${}可以用来充当占位符,random可以拿来取随机数,也可以来引用之前的属性,如果引用属性的时候找到该属性,则输出会把你写的方程字符串来输出,此时可以用:为其指定默认的值
开发环境和生产环境肯定会不一样,此时我们就需要通过profiles来指定此时处于什么环境,而yaml有一个很友好的功能,就是多文档块,中间用—来分割文档块,spring.profiles.active: prod来激活指定的配置文件,如下
#文档块一(默认)
server:
port: 8081
spring:
profiles:
active: prod
---
#文档块二(开发环境)
server:
port: 8082
spring:
profiles: dev
---
#文档块三(生产环境)
server:
port: 8083
spring:
profiles: prod
如果使用properties配置文件,需要写多个配置文件
激活配置文件的方式有多种,除了上面那一种,还有虚拟机激活方式,命令行激活方式,命令行激活方式在项目打成jar包后依然很完美的可执行,命令一样,如下
java -jar xxxxx.jar --spring.profiles.active = prod