yml中的${AUTH_DB_USER:root}
spring: flyway: baseline-on-migrate: true locations: classpath:db datasource: hikari: connection-test-query: SELECT 1 minimum-idle: 1 maximum-pool-size: 5 pool-name: dbcp1 driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/auth?autoReconnect=true&useSSL=false username: ${AUTH_DB_USER:root} password: ${AUTH_DB_PWD:123456}
这种表达类似于EL表达式,通过key来获取value。此处
${AUTH_DB_USER:root}
表示先从配置文件yml中或者启动命令中读取AUTH_DB_USER的值,如果没有读取到,就是用默认值root(其他变量类似)。好处是换一个新的环境时,不用改配置文件,直接在启动命令上指定值就可以。
比如在启动项目时使用命令来指定
java -jar -DB_HOST=localhost xxx.jar