溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring boot集成Nacos-配置中心詳解

發(fā)布時間:2020-04-05 19:42:16 來源:網(wǎng)絡 閱讀:3154 作者:wx581d817197d3a 欄目:編程語言

該文檔是基于spring cloud版本進行開發(fā)。

Nacos持久化可以參考:https://mp.weixin.qq.com/s/6khhRU46J2kFJKUBuDyTGQ

項目集成

依賴

最新版本可以參考https://github.com/spring-cloud-incubator/spring-cloud-alibaba/releases

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

配置文件

這里有兩個坑:1、配置文件必須是bootstrip.properties或者bootstrip.yml,如果配置application.properties或者application.yml會導致加載不到配置;2、spring.cloud.nacos.config.namespace如果是默認的Public,則不需填寫,否則獲取不到配置信息

#指定開發(fā)環(huán)境
spring.profiles.active=dev
#服務器地址
spring.cloud.nacos.config.server-addr=127.0.01:8848
#默認為Public命名空間,不需要寫,如果加上的話會導致加載不到配置文件
spring.cloud.nacos.config.namespace=686b723d-e1e6-4f6a-ba2b-cdee09dc8dae
#文件名 -- 如果沒有配置則默認為 ${spring.appliction.name}
spring.cloud.nacos.config.prefix=dhap
#指定文件后綴
spring.cloud.nacos.config.file-extension=yaml
#指定分組信息
spring.cloud.nacos.config.group=AAA

Nacos配置

命名空間

nacos使用namespace進行環(huán)境隔離,可以指定不同的環(huán)境,更好的管理開發(fā)、測試、生產(chǎn)的配置文件管理
Spring boot集成Nacos-配置中心詳解

資源配置

Spring boot集成Nacos-配置中心詳解

Data ID

Data ID的格式如下:

參考:https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

${prefix}-${spring.profile.active}.${file-extension}

  • prefix 默認為 spring.application.name 的值,也可以通過配置項 spring.cloud.nacos.config.prefix來配置。

  • spring.profile.active 即為當前環(huán)境對應的 profile。 注意:當 spring.profile.active 為空時,對應的連接符 - 也將不存在,dataId 的拼接格式變成 ${prefix}.${file-extension}。

  • file-exetension 為配置內容的數(shù)據(jù)格式,可以通過配置項 spring.cloud.nacos.config.file-extension來配置。目前只支持 properties 和 yaml 類型。

    Group

    默認為DEFAULT_GROUP,可以對不同類型的微服務配置文件進行分組管理。配置文件通過spring.cloud.nacos.config.group=AAA來指定。

    配置內容

    配置文件格式支持一下幾種TEXT、JSON、XML、YAML、HTML、Properties

配置操作

歷史版本

資源文件每次修改都會記錄一個歷史版本,歷史記錄默認保存時間為30天,可以根據(jù)歷史記錄看到每次更新的內容。還可以讓指定的記錄文件回滾至上一個版本。
Spring boot集成Nacos-配置中心詳解

監(jiān)聽查詢

可以監(jiān)聽每個具體資源文件由哪些ip進行訪問
Spring boot集成Nacos-配置中心詳解

項目示例

啟動類

@SpringBootApplication(scanBasePackages= {"com.dhap"})
@EnableDiscoveryClient
public class Application {
    public static void main(String [] args){
        SpringApplication.run(Application.class, args);
    }
}

調用示例
要實現(xiàn)配置文件實時生效需要加注解:@RefreshScope

@RequestMapping("/test")
@RestController
@RefreshScope
public class TestController  {

    @Autowired
    private TestService<Test> tsService;

    @GetMapping("/nacos")
    public String get() {
        return test;
    }

    @Value(value = "${test}")
    private String test;

    }

Spring boot集成Nacos-配置中心詳解

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI