SpringCloud-Config分布式配置代碼示例
概述
Spring Cloud Config為分布式系統(tǒng)中的外部化配置提供服務(wù)器端和客戶端支持。使用Config Server,您可以在中心位置管理所有環(huán)境中應(yīng)用程序的外部屬性??蛻舳撕头?wù)器上的概念都與Spring Environment和PropertySource抽象映射相同,因此它們非常適合Spring應(yīng)用程序,但可以與以任何語言運行的任何應(yīng)用程序一起使用。
在應(yīng)用程序從開發(fā)人員到測試人員再到生產(chǎn)人員的整個部署過程中,您可以管理這些環(huán)境之間的配置,并確保應(yīng)用程序具有它們遷移時所需的一切。服務(wù)器存儲后端的默認實現(xiàn)使用git,因此它輕松支持帶標簽的配置環(huán)境版本,并且可以通過各種工具來訪問這些內(nèi)容來管理內(nèi)容。添加替代實現(xiàn)并將其插入Spring配置很容易。
•去碼云創(chuàng)建倉庫,克隆到本地文件夾,配置application.yml文件

•application.yml配置
spring: profiles: active: dev --- spring: profiles: dev application: name: springcloud-config-dev --- spring: profiles: test application: name: springcloud-config-test
•把這個文件提交到碼云上,總共四步。
第一步:
把文件添加到暫存區(qū)
git add
在這里添加

第二步:
查看狀態(tài)
git status
第三步:
提交
git commit -m "fist commit" //fist commit是描述信息
第四步:
push到遠程
git push origin master
測試:成功

•創(chuàng)建服務(wù)端Server項目
•導(dǎo)入依賴
<dependencies>
<!--config-->
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-config-server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<!--actuator完善監(jiān)控信息-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
•編寫配置
server:
port: 3344
spring:
application:
name: springcloud-congi-server
#連接遠程倉庫
cloud:
config:
server:
git:
uri: https://gitee.com/springandspring/springcloud-config.git #這里的uri是碼云上自己創(chuàng)建的倉庫HTTPS下載的地址
•開啟功能
@EnableConfigServer
•測試

•更上面一樣

•config-client配置
spring: profiles: active: dev --- server: port: 8201 #spring的配置 spring: profiles: dev application: name: springcloud-provider-dept #Eureka的配置,服務(wù)注冊到哪里 eureka: client: service-url: defaultZone: http://eureka7001.com:7001/eureka/ --- server: port: 8202 #spring的配置 spring: profiles: test application: name: springcloud-provider-dept #Eureka的配置,服務(wù)注冊到哪里 eureka: client: service-url: defaultZone: http://eureka7001.com:7001/eureka/
•執(zhí)行上面的四步,push到遠程

•創(chuàng)建一個client客戶端新項目
•導(dǎo)入依賴
<dependencies>
<!--config-->
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-config -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
•編寫bootstrap配置
#系統(tǒng)級別的配置 比用戶級別設(shè)置先執(zhí)行 spring: cloud: config: profile: dev #生產(chǎn)環(huán)境 name: config-client #需要從git上讀取的資源名稱,不需要后綴 label: master uri: http://localhost:3344 #連接服務(wù)端的地址 #相當(dāng)于http://localhost:3344/master/config-client-dev/master
編寫application配置
#用戶級別的設(shè)置 spring: application: name: springcloud-config-client-3355
•編寫啟動類
•編寫Controller
@RestController
public class ConfigClientController {
@Value("${spring.application.name}")
private String applicationName;
@Value("${eureka.client.service-url.defaultZone}")
private String eurekaServer;
@Value("${server.port}")
private String port;
@RequestMapping("/config") //請求這個路徑獲取config-client配置里面的信息
public String getConfig(){
return "applicationName"+applicationName+
"eurekaServer"+eurekaServer+
"port"+port;
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 解決SpringCloud Config結(jié)合github無法讀取配置的問題
- springCloud config本地配置操作
- SpringCloud Config配置加密解密用法解析
- SpringCloud Config使用本地倉庫及map注入
- SpringCloud配置中心Config過程解析
- Springcloud Config支持本地配置文件的方法示例
- springcloud config配置讀取優(yōu)先級過程詳解
- 詳解SpringCloud Config配置中心
- SpringCloud之分布式配置中心Spring Cloud Config高可用配置實例代碼
- SpringCloud微服務(wù)之Config知識總結(jié)
相關(guān)文章
Spring項目使用Maven和BCrypt實現(xiàn)修改密碼功能方式
在數(shù)字時代,信息安全尤其是密碼安全至關(guān)重要,本文通過實例探討如何在Spring項目中利用Maven和BCrypt實現(xiàn)一個安全的密碼修改功能,我們將從環(huán)境搭建到編寫核心業(yè)務(wù)邏輯,再到完成功能測試,確保每一步都遵循最佳安全實踐,通過本文,你將了解到密碼安全的重要性2024-10-10
java使用TimeZone將中國標準時間轉(zhuǎn)成時區(qū)值
這篇文章主要介紹了java使用TimeZone將中國標準時間轉(zhuǎn)成時區(qū)值的相關(guān)資料,需要的朋友可以參考下2023-11-11
Java導(dǎo)出oracle表結(jié)構(gòu)實例詳解
這篇文章主要介紹了 Java導(dǎo)出oracle表結(jié)構(gòu)實例詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03

