资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

Java集成nacos配置管理

Java 更新时间: 发布时间: 计算机考试归档 最新发布

Java集成nacos配置管理

官方文档:https://github.com/nacos-group/nacos-examples/tree/master/nacos-client-example

https://nacos.io/zh-cn/docs/sdk.html

1、引入jar

                    com.alibaba.nacos            nacos-client            2.1.0        

2、配置管理

import java.util.Properties;import com.alibaba.nacos.api.NacosFactory;import com.alibaba.nacos.api.PropertyKeyConst;import com.alibaba.nacos.api.config.ConfigService;import com.alibaba.nacos.api.config.listener.AbstractListener;import com.alibaba.nacos.api.exception.NacosException;import com.alibaba.nacos.client.config.listener.impl.PropertiesListener;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class NacosConfigExample {    private static final Logger LOGGER = LoggerFactory.getLogger(NacosConfigExample.class);    public static void main(String[] args) throws NacosException {        Properties properties = new Properties();        // Nacos 地址        properties.put(PropertyKeyConst.SERVER_ADDR, "127.0.0.1:8848");        // 命名空间,不指定默认命名空间是空(public)        properties.put(PropertyKeyConst.NAMESPACE, "develop");        ConfigService configService = NacosFactory.createConfigService(properties);        // 指定配置的 DataID 和 Group        String dataId = "testDataId";        String group = "testGroup";        String content = "connectTimeoutInMills=5000";        // 发布配置        boolean publishConfig = configService.publishConfig(dataId, group, content);        LOGGER.info("publishConfig: {}", publishConfig);        wait2Sync();        // 查询配置        String config = configService.getConfig(dataId, group, 5000);        LOGGER.info("getConfig: {}", config);        // 监听配置        configService.addListener(dataId, group, new PropertiesListener() {            @Override            public void innerReceive(Properties properties) {                // 由于properties对象结构,默认反序列化                LOGGER.info("innerReceive: {}", properties);            }        });        configService.addListener(dataId, group, new AbstractListener() {            @Override            public void receiveConfigInfo(String s) {                // 如果是json/yaml/pojo对象,可以根据需要做反序列化                LOGGER.info("innerReceive: {}", s);            }        });        // 更新配置        boolean updateConfig = configService.publishConfig(dataId, group, "connectTimeoutInMills=3000");        LOGGER.info("updateConfig: {}", updateConfig);        wait2Sync();        // 删除配置        boolean removeConfig = configService.removeConfig(dataId, group);        LOGGER.info("removeConfig: {}", removeConfig);        wait2Sync();        config = configService.getConfig(dataId, group, 5000);        LOGGER.info("getConfig: {}", config);    }    private static void wait2Sync() {        try {            Thread.sleep(3000);        } catch (InterruptedException e) {            // ignore        }    }}
转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/1094992.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【Java集成nacos配置管理】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2