昨天覆習springcloud項目開發的時候,在集合springcloud config和springcloud bus 是遇到一個問題: "使用了DRUID數據驅動" 配置文件提交到了git倉庫 也通過post請求通知註冊在eureka中的各個服務,更換了部署環境(dev:數據庫_01,prod:數據庫_02)各個服務啓動之後,從dev切換到prod之後正常來講數據應該來自數據庫_02但是數據依然是數據庫_01的,通過一系列找資料找到了方法:
應該創建一個DruidConfig的配置類,使用@refreshScope註解和@ConfigurationProperties(prefix = "配置信息")創建一個獲取datasource對象的類並使用@bean註解和@configuration將其註冊到srping管理
坑一: @refreshScope放在DruidConfig配置類的類名上修飾.結果還是不能顯示數據庫_02的數據
結果: 將@refreshScope放在方法上
@Configuration
public class DruidConfig {
@Bean
@RefreshScope //刷新配置
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource druid(){
return new DruidDataSource();
}
}
這樣重啓項目,數據來源就對了.