当前位置:网站首页>yml引用其他变量
yml引用其他变量
2022-04-23 14:08:00 【阿闰】
参考:YAML文件(.yml)中的键(key)通过变量引用来设置 - i江湖中人 - 博客园
通过变量引用设置配置量的【值(value)】
在YAML文件中,一个配置量的值可以通过引用另一个变量来设置。例如:
default-db:
port: 3306
user-db:
port: ${default-db.port}
但是,如果想通过变量引用设置键,通过${}是做不到的。例如:
site:
url:
user: www.user.net
shop: www.shop.net
site:
slogan:
${site.url.user}: everyone is great!
${user.url.shop}: buy anything you want!
在将配置读入程序中之后,你会发现上述的${}引用,并没有替换成真正的值。
通过锚点引用设置配置量的【键(key)】
要想替换键,则需要用到锚点。锚点用符号“&”定义,并用符号“*”进行引用。
锚点有两种使用方式,一是通过“<<:”将键值对一起引入:
default-db: &default-db-config
host: 127.0.0.1
port: 3306
user-db:
<<: *default-db-config
其实际效果如:
default-db:
host: 127.0.0.1
port: 3306
user-db:
host: 127.0.0.1
port: 3306
说明:&后面的锚点名字,可自己定义,不必与配置量的键相同。
另一种是仅引入配置的值:
site:
url:
user: &site.user www.user.net
shop: &site.shop www.shop.net
site:
slogan:
*site.user: everyone is great!
*site.shop: buy anything you want!
其实际效果如:
site:
url:
user: www.user.net
shop: www.shop.net
site:
slogan:
www.user.net: everyone is great!
www.shop.net: buy anything you want!
说明:用&定义锚点时,注意锚点名前后的空格。
另一个仅引入值例子:
color:
- &red-color red
- yellow
- blue
- *red-color
- gray
其实际效果如:
color:
- red
- yellow
- blue
- red
- gray
参考文档:
版权声明
本文为[阿闰]所创,转载请带上原文链接,感谢
https://blog.csdn.net/wasd986523/article/details/120249547
边栏推荐
- 使用DialogFragment的一些感受及防踩坑经验(getActivity、getDialog为空,cancelable无效等)
- MYSQL一种分表实现方案及InnoDB、MyISAM、MRG_MYISAM等各种引擎应用场景介绍
- Wechat applet communicates with low-power Bluetooth - receives data sent by hardware (IV)
- postman批量生产body信息(实现批量修改数据)
- MySQL数据库讲解(八)
- 关于密匙传递的安全性和数字签名
- HyperMotion云迁移助力中国联通,青云完成某央企上云项目,加速该集团核心业务系统上云进程
- On the multi-level certificate based on OpenSSL, the issuance and management of multi-level Ca, and two-way authentication
- On September 8, the night before going to Songshan Lake
- 什么是云迁移?云迁移的四种模式分别是?
猜你喜欢
Three point positioning based on ibeacons (wechat applet)
HyperBDR云容灾V3.3.0版本发布|容灾功能升级,资源组管理功能优化
快速安装mongodb
RobotFramework 之 文件上传和下载
帆软中使用if else 进行判断-使用标题条件进行判断
政务云迁移实践 北明数科使用HyperMotion云迁移产品为某政府单位实施上云迁移项目,15天内完成近百套主机迁移
RecyclerView高级使用(一)-侧滑删除的简单实现
使用itextpdf实现截取pdf文档第几页到第几页,进行分片
在Clion中给主函数传入外部参数
查询2013年到2021年的数据,只查询到2020的数据,遇到了这个问题所进行的解决办法
随机推荐
Promtail + Loki + Grafana 日志监控系统搭建
RobotFramework 之 用例标签机制
星界边境Starbound创意工坊订阅的mod的存放路径
Homebrew是什么?以及使用
Easyexcel读取excel表地理位置数据,按中文拼音排序
Logback logger and root
postman批量生产body信息(实现批量修改数据)
关于密匙传递的安全性和数字签名
dp-[NOIP2000]方格取数
RecyclerView高级使用(一)-侧滑删除的简单实现
连接公司跳板机取别名
线程组ThreadGroup使用介绍+自定义线程工厂类实现ThreadFactory接口
Request module
Oracle-数据泵使用
MYSQL一种分表实现方案及InnoDB、MyISAM、MRG_MYISAM等各种引擎应用场景介绍
Can global variables be defined in header files
rsync+inotify远程同步
DeepinV20安装Mariadb
使用DialogFragment的一些感受及防踩坑经验(getActivity、getDialog为空,cancelable无效等)
Wechat applet initializes Bluetooth, searches nearby Bluetooth devices and connects designated Bluetooth (I)