yml配置--给参数设置默认值
在学习eladmin的时候,application-dev.yml中有配置使用了${DB_HOST:localhost},表示是取值。
先在主application.yml配置文件中或者命令行中找键值,若是存在则赋值,若是不存在则使用默认的值。
背景
今天看了一下pig项目,对其中的 user: ${MYSQL-USER:root} 这种写法感到有些陌生,所以本着多学点东西的想法去一探究竟。
db:
num: 1
user: ${MYSQL-USER:root}
password: ${MYSQL-PWD:root}
url:
0: jdbc:mysql://${MYSQL_HOST:pigx-mysql}:${MYSQL_PORT:3306}/${MYSQL_DB:pigxx_config}?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
123456
解释
${}这种写法很明显是取值,从一个已经定义好的配置文件中,根据key取出value,在spring开发中很常见, 以\user: ${MYSQL-USER:root}为例,它代表的意思是代码里先从配置文件(springboot的yml