最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot實(shí)現(xiàn)連接nacos并支持多環(huán)境部署

 更新時(shí)間:2024年06月03日 16:37:12   作者:bobzhouwei888  
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)連接nacos并支持多環(huán)境部署方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

nacos安裝

官網(wǎng)有很詳細(xì)的步驟,這里不再贅述:https://nacos.io/zh-cn/docs/quick-start.html

nacos服務(wù)配置基本步驟

  • 下載jar包或同步代碼后編譯jar包
  • 生成MySql數(shù)據(jù)庫(kù)表 (MySql腳本在:config目錄里的nacos-mysql.sql)
  • 重置nacos默認(rèn)用戶的密碼,用下面方式取得密碼的加密串,更新數(shù)據(jù)表里的密碼
String password = new BCryptPasswordEncoder().encode("你的密碼");
  • 部署到服務(wù)器,并修改conf/application.properties文件支持mysql,詳細(xì)參考:https://nacos.io/zh-cn/docs/deployment.html
  • 啟動(dòng)nacos服務(wù)
  • 用新密碼登陸,后可以新建各種配置

SpringBoot客戶端讀取nacos的配置

  • pom引用:
 <dependency>
	<groupId>com.alibaba.boot</groupId>
	<artifactId>nacos-config-spring-boot-starter</artifactId>
	<version>0.2.1</version>
</dependency>
  • 配置nacos服務(wù)地址

在配置文件中配置nacos服務(wù)的地址

nacos:
  config:
    server-addr: 10.10.1.111:8848
  • 獲取public空間下的默認(rèn)group的某個(gè)dataId的某個(gè)屬性值

nacos默認(rèn)創(chuàng)建了一個(gè)“public”的命名空間,創(chuàng)建的dataId在默認(rèn)名為“DEFAULT_GROUP”的group下。

獲取默認(rèn)環(huán)境下的新建的例如叫"myfirstconfig"這個(gè)dataId的配置的方法如下:

@NacosPropertySource(dataId = "myfirstconfig", autoRefreshed = true)
public class NacosMyFirstConfig {
    @NacosValue(value = "${ExpireSeconds:30}", autoRefreshed = true)
    private int expireSeconds;

假設(shè)"myfirstconfig"這個(gè)dataId中有個(gè)屬性名為ExpireSeconds,獲取這個(gè)屬性名的值的方法如上,ExpireSeconds冒號(hào)后面的值為默認(rèn)值,當(dāng)獲取不到nacos對(duì)應(yīng)的屬性名時(shí)使用的默認(rèn)值。

autoRefreshed = true則表示nacos server上這個(gè)屬性值一旦變化,客戶端就能獲取到新的變化后的值。

  • 你可以新建新的namespace命名空間和新的group名,接下來(lái)多環(huán)境的部署就要用到不同的namespace

SpringBoot客戶端多環(huán)境使用nacos

我們的程序一般會(huì)有開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、生產(chǎn)環(huán)境,或者測(cè)試和生成之間有堡壘環(huán)境,一套java代碼是通過(guò)指定 spring.profiles.active以及對(duì)應(yīng)的application-xxx.yml來(lái)控制不同環(huán)境及其配置的。

那么怎么讓不同的環(huán)境,讀取到不同的nacos配置值呢?

在nacos上創(chuàng)建不同的namespace

  • nacos上可以創(chuàng)建多個(gè)namespace,除了默認(rèn)的public的namespace,你可以創(chuàng)建dev、test等namespace。新建的namespace會(huì)在名稱旁邊出現(xiàn)一串字符,如6e9c8f46-3e40-41f2-9bf3-50f78c860971,這就是
  • 這個(gè)namespac的唯一ID,記下這些唯一ID,接下來(lái)有用。

在每個(gè)namespace中創(chuàng)建相同名稱的一套dataId,里面的屬性名也相同,只有屬性值不同,都放在默認(rèn)的“DEFAULT_GROUP”的group下

  • 比如剛才的myfirstconfig這個(gè)dataId,在dev和test的namespace下都創(chuàng)建出來(lái),并且里面也都有ExpireSeconds這個(gè)屬性名,屬性值可以不同。

客戶端指定不同的namespace

  • 在不同的application-xxx.yml文件中指定不同的namespace
nacos:
  config:
    server-addr: 10.10.1.111:8848
    namespace: 6e9c8f46-3e40-41f2-9bf3-50f78c860971

注意namespace不是填寫dev、test這些名稱,而是要填寫唯一ID串,每個(gè)新建的namespace都有一個(gè)唯一ID,如上所示。

如果是調(diào)用默認(rèn)的publicnamespace,則不需要指定namespace

這樣,你可以發(fā)現(xiàn),不同的環(huán)境啟動(dòng)的程序,獲取到的是不同的namespace下的屬性值,其余地方的代碼不需要做任何修改。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 關(guān)于文件合并與修改md5值的問(wèn)題

    關(guān)于文件合并與修改md5值的問(wèn)題

    這篇文章主要介紹了關(guān)于文件合并與修改md5值的問(wèn)題,使用本博客的方法,不僅僅可以修改md5值,還可以達(dá)到隱藏文件的目的,需要的朋友可以參考下
    2023-04-04
  • 使用jvm sandbox對(duì)三層嵌套類型的改造示例

    使用jvm sandbox對(duì)三層嵌套類型的改造示例

    這篇文章主要為大家介紹了使用jvm sandbox對(duì)三層嵌套類型的改造示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • Java設(shè)計(jì)模式之適配器模式詳解

    Java設(shè)計(jì)模式之適配器模式詳解

    這篇文章主要介紹了Java設(shè)計(jì)模式之適配器模式詳解,適配器模式將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另一個(gè)接口,Adapter模式使得原本由于接口不兼容而不能一起工作的哪些類可以一起工作,需要的朋友可以參考下
    2023-09-09
  • Java中使用正則表達(dá)式獲取網(wǎng)頁(yè)中所有圖片的路徑

    Java中使用正則表達(dá)式獲取網(wǎng)頁(yè)中所有圖片的路徑

    這篇文章主要介紹了Java中使用正則表達(dá)式獲取網(wǎng)頁(yè)中所有圖片的路徑,本文直接給出實(shí)例代碼,需要的朋友可以參考下
    2015-06-06
  • SpringBoot配置文件優(yōu)先級(jí)用法及解讀

    SpringBoot配置文件優(yōu)先級(jí)用法及解讀

    SpringBoot配置優(yōu)先級(jí)按來(lái)源排序,15種類型中命令行參數(shù)最高,配置文件次之,classpath下config目錄的配置優(yōu)先級(jí)高于jar內(nèi)文件,配置中心如Nacos的配置則插入列表前端,所有配置最終存入Environment的propertySources,通過(guò)順序遍歷實(shí)現(xiàn)覆蓋
    2025-07-07
  • Mac上配置JDK?1.8的超詳細(xì)流程

    Mac上配置JDK?1.8的超詳細(xì)流程

    相信每個(gè)拿到MAC的小伙伴都是很欣喜的,但是由于MAC系統(tǒng)與WIN系統(tǒng)有著極大的不同,所以使用起來(lái)會(huì)有一些小困擾,這篇文章主要給大家介紹了關(guān)于Mac上配置JDK?1.8的超詳細(xì)流程,需要的朋友可以參考下
    2023-11-11
  • IDEA在一個(gè)項(xiàng)目空間下管理多個(gè)項(xiàng)目的操作方法

    IDEA在一個(gè)項(xiàng)目空間下管理多個(gè)項(xiàng)目的操作方法

    這篇文章主要介紹了IDEA如何在一個(gè)項(xiàng)目空間下管理多個(gè)項(xiàng)目,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • Java讀取本地json文件及相應(yīng)處理方法

    Java讀取本地json文件及相應(yīng)處理方法

    今天小編就為大家分享一篇Java讀取本地json文件及相應(yīng)處理方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 淺談Java中注解Annotation的定義、使用、解析

    淺談Java中注解Annotation的定義、使用、解析

    下面小編就為大家?guī)?lái)一篇淺談Java中注解Annotation的定義、使用、解析。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • Shiro中session超時(shí)頁(yè)面跳轉(zhuǎn)的處理方式

    Shiro中session超時(shí)頁(yè)面跳轉(zhuǎn)的處理方式

    這篇文章主要介紹了Shiro中session超時(shí)頁(yè)面跳轉(zhuǎn)的處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評(píng)論

嘉义县| 文安县| 清苑县| 石首市| 和硕县| 银川市| 白水县| 岑巩县| 万山特区| 石嘴山市| 安多县| 泰和县| 蚌埠市| 石楼县| 元氏县| 富蕴县| 兴海县| 云南省| 离岛区| 茂名市| 延吉市| 延边| 理塘县| 安顺市| 通许县| 定州市| 页游| 定日县| 章丘市| 太康县| 综艺| 登封市| 萨迦县| 通榆县| 贵港市| 宁国市| 庄河市| 垫江县| 杭锦后旗| 龙口市| 师宗县|