共计 1283 个字符,预计需要花费 4 分钟才能阅读完成。
ZooKeeper Java 客户端 API 中如何获取子节点,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
获取节点的子节点
public class ZooKeeper_GetChildren_API_Sync_Usage implements Watcher {private static CountDownLatch connectedSemaphore = new CountDownLatch(1);
private static ZooKeeper zk = null;
public static void main (String[] args) throws Exception{
String path = /huangyi
zk = new ZooKeeper( 202.201.13.55:2100 ,
5000,
new ZooKeeper_GetChildren_API_Sync_Usage());
connectedSemaphore.await();
zk.create(path, .getBytes(),
Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
zk.create(path+ /c1 , .getBytes(),
Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL);
List String childrenList = zk.getChildren(path, true);
System.out.println(childrenList);
zk.create(path+ /c2 , .getBytes(),
Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL);
Thread.sleep( Integer.MAX_VALUE);
public void process(WatchedEvent event) {if (KeeperState.SyncConnected == event.getState()) {if (EventType.None == event.getType() null == event.getPath()) {connectedSemaphore.countDown();
} else if (event.getType() == EventType.NodeChildrenChanged) {
try {System.out.println( ReGet Child: + zk.getChildren(event.getPath(), true));
} catch (Exception e) {}}
结果打印
[c1]
ReGet Child:[c1, c2]
关于 ZooKeeper Java 客户端 API 中如何获取子节点问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。
正文完