欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringCloud使用Zookeeper作為配置中心的示例

 更新時間:2021年04月30日 10:52:23   作者:布禾  
這篇文章主要介紹了SpringCloud使用Zookeeper作為配置中心的示例,幫助大家更好的理解和學習使用SpringCloud,感興趣的朋友可以了解下

上一篇文章中介紹了Zookeeper作為注冊中心使用,在這篇文章中將介紹Zookeeper作為配置中心的使用,廢話不多說,直接上代碼。

相關依賴

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.4.5</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.example</groupId>
	<artifactId>zkdemo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>zkdemo</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>1.8</java.version>
		<spring-cloud.version>2020.0.2</spring-cloud.version>
	</properties>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-zookeeper-config</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

配置文件application.yml

spring:
  application:
    name: zkdemo
  profiles:
    active: dev
  cloud:
    zookeeper:
      # Zookeeper服務器地址,集群使用逗號分隔
      connect-string: localhost:2181
  # 從Zookeeper中導入配置數據
  config:
    import: 'optional:zookeeper:'

server:
  port: 8005

在Zookeeper中創(chuàng)建配置節(jié)點和數據

創(chuàng)建配置根節(jié)點/config:

[zk: localhost:2181(CONNECTED) 3] create /config
Created /config

創(chuàng)建全局配置節(jié)點/config/application,/config/application節(jié)點下的配置所有服務都能使用。

[zk: localhost:2181(CONNECTED) 4] create /config/application
Created /config/application

添加全局配置nickname1:

[zk: localhost:2181(CONNECTED) 5] create /config/application/nickname1 布禾
Created /config/application/nickname1

創(chuàng)建zkdemo服務dev環(huán)境的配置節(jié)點/config/zkdemo,dev,該節(jié)點的配置只能被特定服務的特定環(huán)境使用,當該節(jié)點的配置和全局配置沖突時,優(yōu)先使用該節(jié)點的配置:

[zk: localhost:2181(CONNECTED) 6] create /config/zkdemo,dev
Created /config/zkdemo,dev

添加zkdemo服務dev環(huán)境配置nickname2:

[zk: localhost:2181(CONNECTED) 7] create /config/zkdemo,dev/nickname2 buhe
Created /config/zkdemo,dev/nickname2

最終結構如下:

測試類

@SpringBootTest
class ZkdemoApplicationTests {
	@Value("${nickname1}")
	private String nickname1;

	@Value("${nickname2}")
	private String nickname2;

	@Test
	public void testZkConfig() {
		System.out.println("從application全局配置中讀取配置:nickname1=" + nickname1);
		System.out.println("從zkdemo服務配置中讀取配置:nickname2=" + nickname2);
	}
}

輸出結果:

從application全局配置中讀取配置:nickname1=布禾
從zkdemo服務配置中讀取配置:nickname2=buhe

自定義Zookeeper配置

如果不想使用默認的Zookeeper配置,可以在application.yml更改:

spring:
  cloud:
    zookeeper:
      config:
        enabled: true
        root: configuration
        default-context: apps
        profile-separator: '::'

enabled:將該值設置為false將禁用Zookeeper配置,默認true。

root:配置根節(jié)點名稱,默認為config。

default-context:全局配置節(jié)點名稱,默認為application。

profile-separator:設置服務名和環(huán)境名稱之間的分隔符,默認為英文逗號。

以上就是SpringCloud使用Zookeeper作為配置中心的示例的詳細內容,更多關于使用Zookeeper作為配置中心的資料請關注腳本之家其它相關文章!

相關文章

  • 解決Mybatis?mappe同時傳遞?List?和其他參數報錯的問題

    解決Mybatis?mappe同時傳遞?List?和其他參數報錯的問題

    在使用MyBatis時,如果需要傳遞多個參數到SQL中,可以遇到參數綁定問題,解決方法包括使用@Param注解和修改mapper.xml配置,感興趣的朋友跟隨小編一起看看吧
    2024-09-09
  • Java分頁查詢--分頁顯示(實例講解)

    Java分頁查詢--分頁顯示(實例講解)

    下面小編就為大家?guī)硪黄狫ava分頁查詢--分頁顯示(實例講解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Springboot使用redisson?+?自定義注解實現消息的發(fā)布訂閱(解決方案)

    Springboot使用redisson?+?自定義注解實現消息的發(fā)布訂閱(解決方案)

    Redisson是一個基于Redis的Java駐留內存數據網格(In-Memory?Data?Grid)和分布式鎖框架,它提供了一系列的分布式Java對象和服務,可以幫助開發(fā)者更方便地使用Redis作為數據存儲和分布式鎖的解決方案,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • Spring Cloud 中@FeignClient注解中的contextId屬性詳解

    Spring Cloud 中@FeignClient注解中的contextId屬性詳解

    這篇文章主要介紹了Spring Cloud 中@FeignClient注解中的contextId屬性詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java多線程面試題(面試官常問)

    Java多線程面試題(面試官常問)

    這篇文章主要介紹了Java多線程面試題(面試官常問),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Java中前端傳參含有“+”“=”等特殊字符處理方式

    Java中前端傳參含有“+”“=”等特殊字符處理方式

    這篇文章主要介紹了Java中前端傳參含有“+”“=”等特殊字符處理,比如“+”如果不經過處理,傳到Java后臺之后,就變成空格了,“=”就直接沒了,本文對這一問題給大家詳細講解,需要的朋友可以參考下
    2023-10-10
  • Java中字符編碼格式詳解

    Java中字符編碼格式詳解

    在java應用軟件中,會有多處涉及到字符集編碼,有些地方需要進行正確的設置,有些地方需要進行一定程度的處理。本文主要給大家講解java中字符的編碼格式等相關問題
    2016-03-03
  • Flink開發(fā)IDEA環(huán)境搭建與測試的方法

    Flink開發(fā)IDEA環(huán)境搭建與測試的方法

    這篇文章主要介紹了Flink開發(fā)IDEA環(huán)境搭建與測試的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • IDEA之項目run按鈕為灰色,無法運行問題

    IDEA之項目run按鈕為灰色,無法運行問題

    這篇文章主要介紹了IDEA之項目run按鈕為灰色,無法運行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 在本地用idea連接虛擬機上的hbase集群的實現代碼

    在本地用idea連接虛擬機上的hbase集群的實現代碼

    這篇文章主要介紹了在本地用idea連接虛擬機上的hbase集群的實現代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10

最新評論