1. 程式人生 > >**Spring cloud config 配置本地屬性供其它客戶端使用

**Spring cloud config 配置本地屬性供其它客戶端使用

Spring cloud config 配置本地屬性供其它客戶端使用

1.你需要了解spring cloud config 屬性命名規則
比如:你的配置中心spring cloud servier 中指定了屬性檔案的地址,在該地址下有多個屬性檔案.你的客戶端spring cloud client 要去讀取哪個一個配置檔案? 這裡就有個命名規則在裡面.
在官方文件中.只是這樣給你的指定屬性
{application} 對應客戶端的”spring.application.name”屬性;
{profile} 對應客戶端的 “spring.profiles.active”屬性(逗號分隔的列表); 和
{label} 對應服務端屬性,這個屬效能標示一組配置檔案的版本.

2.下面是我自己配置的簡單案例.
因為在內網裡,不想使用svn,git,太容易給別人誤操作。
下面直接貼程式碼了。
2.1
先配置server

@SpringBootApplication
@EnableConfigServer
public class SpringcloudserviceApplication {
    public static void main(String[] args) {    SpringApplication.run(SpringcloudserviceApplication.class, args);
    }
}

在application.properties中配置

#配置工程監聽埠8888
server.port=8888

#使用本地屬性檔案
spring.profiles.active = native

#屬性檔案地址,只要指定資料夾的路徑
spring.cloud.config.server.native.searchLocations=classpath:/properties/

在resource下面建立個屬性檔案
這裡寫圖片描述

在com-dataSource.properties中配置

url=192.168.100.100

簡單測試用url

2.2
在client配置

@SpringBootApplication
@RestController
public class SpringcloudclientApplication { @Value("${url}") String url; @RequestMapping("/get") String hello() { return "Hello " + url + "!"; } public static void main(String[] args) { SpringApplication.run(SpringcloudclientApplication.class, args); } }

在resource下面新增bootstrap.properties屬性檔案
這裡寫圖片描述

bootstrap.properties屬性檔案

#指定配置中心
spring.cloud.config.uri:http://localhost:8888

#指定屬性檔名 com-dataSource.properties,是有命名規則的
spring.application.name=com
spring.cloud.config.profile=dataSource 
spring.cloud.config.label=master

訪問結果展示
這裡寫圖片描述