• 【nacos】Java调用nacos SDK获取配置信息为null


    通过 Nacos 提供的 Java 客户端 SDK 来获取配置信息,但是结果是null

    
    <dependency>
        <groupId>com.alibaba.nacosgroupId>
        <artifactId>nacos-clientartifactId>
        <version>2.1.2version>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    代码如下

    public static void main(String[] args) throws NacosException {
    //nacos 地址
    String serverAddr = "127.0.0.1:8848";
    //Data Id
    String dataId = "nacos‐simple‐demo.yaml";
    //Group
    String group = "DEFAULT_GROUP";
    Properties properties = new Properties();
    properties.put("serverAddr",serverAddr);
    ConfigService configService = NacosFactory.createConfigService(properties);
    //获取配置,String dataId, String group, long timeoutMs
    String content = configService.getConfig(dataId, group, 5000);
    System.out.println(content);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    打印出来的content始终为null,去查看源码中的调用方法,发现源码中多了一个命名空间的配置。将以上代码添加以下代码即可:

    //添加nacos 命名空间,testNacos:为你需要查询配置所在的命名空间
    properties.setProperty("namespace", "testNacos");
    
    • 1
    • 2

    完整版代码如下:

      public static void main(String[] args) throws NacosException {
            Properties properties = new Properties();
            //nacos 地址  PropertyKeyConst.SERVER_ADDR:"serverAddr"
            properties.setProperty(PropertyKeyConst.SERVER_ADDR,"127.0.0.1:8848");
            //nacos 命名空间
            properties.setProperty("namespace", "testNacos");
    
            //Data Id
            String dataId = "nacos-demo1.yml";
            //Group
            String group = "DEFAULT_GROUP";
            
            ConfigService configService = NacosFactory.createConfigService(properties);
            //获取配置,String dataId, String group, long timeoutMs
            String content = configService.getConfig(dataId, group, 5000);
            System.out.println("content: "+content);
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
  • 相关阅读:
    C语言,标志法
    9.19(复习9.18,9.16,9.12)
    postgresql安装配置和基本操作
    Kubernetes API的流编解码器StreamSerializer
    手把手教你使用LabVIEW OpenCV dnn实现物体识别(Object Detection)含源码
    Qt 关于窗口全屏显示与退出全屏的实现
    ElementUI - 主页面--动态树&右侧内容管理
    web基础学习之(二)HTML介绍
    PTR记录-系统架构师(五)
    期货突破(期货突破交易法)
  • 原文地址:https://blog.csdn.net/qq_42282789/article/details/134533584