全部產品
Search
文件中心

Application Configuration Management(Deprecated):監聽配置

更新時間:Jul 06, 2024

用於監聽 ACM 配置的變更,以即時擷取最新的配置內容。

描述

使用以下介面監聽 ACM 配置的變更。

public static void addListener(String dataId, String group, ConfigChangeListenerAdapter listener)

請求參數

參數 參數類型 描述
dataId String 配置 ID,採用類似 package.class(如 com.taobao.tc.refund.log.level)的命名規則保證全域唯一性。建議根據配置的業務含義來定義 class 部分。全部字元均為小寫。只允許英文字元和 4 種特殊字元(“.”、“:”、“-”、“_”),不超過 256 位元組。
group String 配置分組,建議填寫產品名:模組名(如 ACM:Test)來保證唯一性。只允許英文字元和 4 種特殊字元(“.”、“:”、“-”、“_”),不超過 128 位元組。
listener ConfigChangeListener 監聽器,配置變更進入監聽器的回呼函數。

傳回值

參數類型 描述
String 配置值,初始化或者配置變更時通過回呼函數返回該值。

請求樣本

說明 請將代碼中的 $regionId$endpoint$namespace$accessKey$secretKey 分別替換為 ACM 控制台上命名空間詳情對話方塊內的地區 IDEnd Point命名空間 IDAccessKeySecretKey
// 初始化佈建服務
ConfigService.init("$endpoint", "$namespace", "$accessKey", "$secretKey");
// 初始化時給配置添加監聽,配置變更會回調通知。
ConfigService.addListener("$dataId", "$group", new ConfigChangeListener() {
    public void receiveConfigInfo(String configInfo) {
        // 當配置更新後,通過該回呼函數將最新值返回給使用者
        System.out.println(configInfo);
    }
});
// 以下代碼用於測試,作用是讓主線程不退出。訂閱配置是守護線程,如果主線程退出守護線程就會退出。
while (true) {
    try {
        Thread.sleep(1000);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}

更多資訊