从zookeeper znode获取数据

时间:2017-12-04 09:35:06

标签: java hadoop hbase yarn apache-zookeeper

我试图使用Java API从zookeeper的znode获取数据。按照以下链接

https://www.tutorialspoint.com/zookeeper/zookeeper_api.htm 程序:ZKGetData.java

我得到的结果是这样的

  

“(clusterSecondarynn1node4.test.com >( >)”

如何单独获得“node4.test.com”。

1 个答案:

答案 0 :(得分:0)

强烈建议对ZK使用一些图层,比如Apache Curator或ZkClient。 这是一个例子

CuratorFramework zkClient = CuratorFrameworkFactory.builder().connectString("localhost:2181").build();
zkClient.start();
boolean isExist = zkClient.checkExists().forPath("/myNode") != null;
if (isExist) {
    byte[] myNodeBytes = zkClient.getData().forPath("/myNode");
    if (myNodeBytes != null && myNodeBytes.length > 0) {
        System.out.println(new String(myNodeBytes));
    }
}
else {
    zkClient.create().withMode(CreateMode.PERSISTENT).forPath("/myNode", "foo".getBytes());
}