nacos--扩展--1.1--SKD--配置管理

nacos–扩展–1.1–SKD–配置管理


代码位置

https://gitee.com/DanShenGuiZu/learnDemo/tree/master/nacos-learn/nocas-sdk

1、准备

1.1、工具类


/**
 * 工具类
 */
public class NacosTools {


    /**
     * 获取配置服务
     */
    public static ConfigService getconfigService() {
        String serverAddr = "192.168.187.171:8848";

        Properties properties = new Properties();
        properties.put("serverAddr", serverAddr);
        ConfigService configService = null;
        try {
            configService = NacosFactory.createConfigService(properties);
        } catch (NacosException e) {
            e.printStackTrace();
        }
        return configService;
    }
}

1.1、配置

在这里插入图片描述

2、获取配置

2.1、接口说明

在这里插入图片描述

2.2、代码

public class Test_getConfig {
    public static void main(String[] args) throws Exception {

        String dataId = "test";
        String group = "oa";

        ConfigService configService = NacosTools.getconfigService();
        String content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);
    }
}

在这里插入图片描述

2.3、异常说明

读取配置超时或网络异常,抛出 NacosException 异常。

3、监听配置

3.1、接口说明

在这里插入图片描述

3.2、代码

public class Test_addListener {
    public static void main(String[] args) throws Exception {

        String dataId = "test";
        String group = "oa";

        ConfigService configService = NacosTools.getconfigService();
        String content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);

        configService.addListener(dataId, group, new Listener() {
            @Override
            public void receiveConfigInfo(String configInfo) {
                System.out.println("配置变更:" + configInfo);
            }

            @Override
            public Executor getExecutor() {
                return null;
            }
        });

        // 测试让主线程不退出,因为订阅配置是守护线程,主线程退出守护线程就会退出。 正式代码中无需下面代码
        while (true) {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }


    }
}
 

在这里插入图片描述

4、删除监听

4.1、接口说明

在这里插入图片描述

4.2、代码

public class Test_removeListener {
    public static void main(String[] args) throws Exception {

        String dataId = "test";
        String group = "oa";

        ConfigService configService = NacosTools.getconfigService();
        String content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);

        Listener listener = new Listener() {
            @Override
            public void receiveConfigInfo(String configInfo) {
                System.out.println("配置变更:" + configInfo);
            }

            @Override
            public Executor getExecutor() {
                return null;
            }
        };

        configService.removeListener(dataId, group, listener);


    }
}
 

在这里插入图片描述

5、发布配置

5.1、接口说明

在这里插入图片描述

5.2、代码

public class Test_publishConfig {
    public static void main(String[] args) throws Exception {
        String dataId = "test";
        String group = "oa";
        ConfigService configService = NacosTools.getconfigService();
        String content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);

        String config_content = "log: rabbitmq";
        boolean isPublishOk = configService.publishConfig(dataId, group, config_content);
        System.out.println("======================isPublishOk======================");
        System.out.println(isPublishOk);

        content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);
    }
}
 

在这里插入图片描述

6、删除配置

6.1、接口说明

在这里插入图片描述

6.2、代码

public class Test_removeConfig {
    public static void main(String[] args) throws Exception {
        String dataId = "test";
        String group = "oa";
        ConfigService configService = NacosTools.getconfigService();
        String content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);

        System.out.println("======================isRemoveOk======================");
        boolean isRemoveOk = configService.removeConfig(dataId, group);
        System.out.println(isRemoveOk);

        content = configService.getConfig(dataId, group, 5000);
        System.out.println("======================content======================");
        System.out.println(content);
    }
}
 

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值