yml文件中${XXX_XXX_XXX:XXXXX}的含义

最近在学习gitee开源项目dcy-fast-cloud,发现其中的yml文件的连接地址都采用下面这种形式,因为是第一次遇到,特此记录下来,以供以后学习。

spring:
  redis:
    host: ${REDIS_HOST:dcy-fast-redis}
    port: ${REDIS_PORT:6379}
    database: 6
  logstash:
    host: ${LOGSTACH_HOST:dcy-fast-logstash}:${LOGSTACH_PORT:5044}

以前直接写地址和端口的地方用${REDIS_HOST:dcy-fast-redis}${LOGSTACH_PORT:5044}这种表达方式替代,其中${REDIS_HOST:dcy-fast-redis}其实就是表示redis的host地址从配置文件或者启动命令中读取REDIS_HOST的值,如果命令行中没有该值,那么dcy-fast-redis就是默认值。
这样用的意义在于项目移植到新的环境运行时,不再需要修改配置文件,可在启动命令行运行需要的指定值就可以了。例如:

java -jar -REDIS_HOST=127.0.0.1 XXX.jar

这样,项目运行的redis.host地址自动加载到127.0.0.1。

其中,也可以在C:\Windows\System32\drivers\etc路径下修改host文件,添加127.0.0.1 dcy-fast-redis配置,那么默认路径也会修改到127.0.0.1。
其余同理

posted @ 2022-08-11 16:10  简单的二叉树  阅读(815)  评论(0)    收藏  举报