配置文件中的$符
場景再現(xiàn)
配置中有如下這樣的用法渠脉,現(xiàn)根據(jù)網(wǎng)上資料做一個整理
spring:
datasource:
druid:
db-type: com.alibaba.druid.pool.DruidDataSource
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
url: jdbc:log4jdbc:mysql://${DB_HOST:***}:${DB_PORT:***}/${DB_NAME:***}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false
username: ${DB_USER:root}
password: ${DB_PWD:***}
spring:
redis:
#數(shù)據(jù)庫索引
database: ${REDIS_DB:**}
host: ${REDIS_HOST:**}
port: ${REDIS_PORT:**}
password: ${REDIS_PWD:**}
#連接超時時間
timeout: 5000
用法說明
${key:default_value} 這種表達(dá)方式是通過key來獲取value甘改,如果獲取不到就使用后面默認(rèn)值哑芹。
在一些直接通過Jar包啟動的場景中吨悍,可以在啟動時手動配置相關(guān)參數(shù)婉烟,如果沒有配置砌些,也會自動獲取默認(rèn)值進(jìn)行啟動,如
java -jar -DREDIS_HOST=172.16.0.36 -DREDIS_DB=2 xxx.jar
使用這種方法也可以獲取path中的環(huán)境變量如:
在path中配置了M2_HOME即可在springboot中使用下面的方式獲取相應(yīng)的值
maven:
path: ${M2_HOME}
配置文件中的@@符
場景再現(xiàn)
spring:
application:
name: "@artifactId@"
profiles:
active: "@spring.profiles.active@"
用法說明
@@ 獲取Maven的工程屬性
配置文件的active
場景再現(xiàn)
spring:
profiles:
active: dev,test
用法說明
會同時讀取dev和test的配置文件朵耕,相同配置項(xiàng)存在覆蓋炫隶。