yml文件中${DB_HOST:localhost}的含义


引自:https://blog.csdn.net/chen462488588/article/details/109057342

今天学习eladmin项目中看到application-dev.yml中数据库配置中写法很奇怪,简单记录下。

#配置数据源
spring:
  datasource:
    druid:
      db-type: com.alibaba.druid.pool.DruidDataSource
      driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
      url: jdbc:log4jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${eladmin}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
      username: ${DB_USER:root}
      password: ${DB_PWD:123456}

这种表达类似于EL表达式,通过key来获取value。此处${DB_HOST:localhost}表示先从配置文件yml中或者启动命令中读取DB_HOST的值,如果没有读取到,就是用默认值localhost(其他变量类似)。好处是换一个新的环境时,不用改配置文件,直接在启动命令上指定值就可以。

比如在启动项目时使用命令来指定

java -jar -DB_HOST=localhost xxx.jar


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM