Springboot使用Nacos做配置中心)

環境

  1. jdk: 1.8
  2. maven: 3.6.3
  3. Idea

項目配置

新建一個Springboot項目,用Idea自動創建就可以,下面開始使用。
引入SpringcloudAlibaba依賴

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.2.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

然後再引入config依賴

<dependency>
     <groupId>com.alibaba.cloud</groupId>
     <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
 </dependency>

創建一個bootstrap.properties
springboot加載配置文件優先順序:

bootstrap.properties>bootstrap.yml>application.properties>application.yml

在配置文件填寫nacos的信息

 # 服務名稱,必須有
 spring.application.name=nacos-config-example
 # Nacosde 地址和端口
 spring.cloud.nacos.config.server-addr=127.0.0.1:8848

然後在nacos配置列表右邊點擊加號,添加配置文件
需要給配置中心默認添加一個叫 數據集(Data Id)test.properties。默認規則,應用名.properties
在這裏插入圖片描述
在配置文件
在這裏插入圖片描述
點擊發布即可
然後在自己項目中獲取配置文件的值
在這裏插入圖片描述
就這樣,簡單的配置中心就完成了。
以前SpringBoot任何方法從配置文件中獲取值,都能使用。

高級使用

配置dev,prod,test環境

我們在開發當中,經常會有開發,生產,測試不同的環境,那麼我們命名空間新建命名空間,分別取prod,dev,test就可以了

 1)、命名空間:配置隔離;
 *      默認:public(保留空間);默認新增的所有配置都在public空間。
 *      1、開發,測試,生產:利用命名空間來做環境隔離。
 *         注意:在bootstrap.properties;配置上,需要使用哪個命名空間下的配置,
 *         spring.cloud.nacos.config.namespace=9de62e44-cd2a-4a82-bf5c-95878bd5e871

在這裏插入圖片描述
在你生成的每一個空間都有系列號,需要以對應,按下圖所示

在這裏插入圖片描述

微服務之間互相隔離配置

每一個微服務之間互相隔離配置,每一個微服務都創建自己的命名空間,只加載自己命名空間下的所有配置

我們可以用配置集
比如一個新建的命名空間就是一個配置集,分別一個微服務項目對應一個一個配置集,在這個配置集裏面我們再新建配置
在這裏插入圖片描述
在這一個配置集裏面可以放下每個微服務對應的配置文件

每個微服務創建自己的命名空間,使用配置分組區分環境,dev,test,prod

同時加載多個配置集
 * 1)、微服務任何配置信息,任何配置文件都可以放在配置中心中
 * 2)、只需要在bootstrap.properties說明加載配置中心中哪些配置文件即可
 * 3)、@Value,@ConfigurationProperties。。。
 * 以前SpringBoot任何方法從配置文件中獲取值,都能使用。
 * 配置中心有的優先使用配置中心中的,

我們可以如下配置
在這裏插入圖片描述
在bootstrap.properties可以如下配置
在這裏插入圖片描述
這樣可以做到每個微服務,每個環境下的配置文件,還可以把不同配置類型的文件分開,比如上圖所示,數據庫配置,mybatis配置,其他配置
如有不對,歡迎留言交流

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章