• 引入依赖
<dependency>
<groupId>com.101tec</groupId>
<artifactId>zkclient</artifactId>
<version>0.10</version>
</dependency>
  • 会话连接
 package com.karat.cn.zookeeper.zkclient;

 import org.I0Itec.zkclient.ZkClient;
/**
* 创建会话(连接zookeeper)
* @author 开发
*
*/
public class SessionDemo { private final static String CONNECTSTRING="47.107.121.215:2181"; public static void main(String[] args) {
ZkClient zkClient=new ZkClient(CONNECTSTRING,4000);
System.out.println(zkClient+" - > success连接");
}
}
  • 节点简单操作
 package com.karat.cn.zookeeper.zkclient;

 import java.util.List;
import java.util.concurrent.TimeUnit; import org.I0Itec.zkclient.IZkChildListener;
import org.I0Itec.zkclient.IZkDataListener;
import org.I0Itec.zkclient.ZkClient;
/**
* 节点操作
* @author Administrator
*
*/
public class ZkClientApiOperatorDemo { private final static String CONNECTSTRING="47.107.121.215:2181"; private static ZkClient getInstance(){
return new ZkClient(CONNECTSTRING,10000);//10000是连接超时时间
} public static void main(String[] args) throws InterruptedException {
ZkClient zkClient=getInstance();//连接
//zkClient.createEphemeral("/zkClient");//创建临时节点
//zkClient中提供递归创建父节点的功能
//zkClient.createPersistent("/zkClient/a/b/c/d",true);//创建持久化节点
//删除节点
//zkClient.delete("/zkClient");
//递归删除节点
//zkClient.deleteRecursive("/zkClient");
//获取子节点
List<String> list=zkClient.getChildren("/zkClient/a");
System.out.println(list); //watcher(订阅获取)
zkClient.subscribeDataChanges("/node", new IZkDataListener() { @Override
public void handleDataDeleted(String dataPath) throws Exception {
// TODO Auto-generated method stub } @Override
public void handleDataChange(String dataPath, Object data) throws Exception {
// TODO Auto-generated method stub
System.out.println("节点名称:"+dataPath+"->节点修改后的值"+data);
}
}); zkClient.writeData("/node", "123");//修改节点的数据
TimeUnit.SECONDS.sleep(2);//上述事件是异步的,需要睡两秒 zkClient.subscribeChildChanges("/node", new IZkChildListener() { @Override
public void handleChildChange(String parentPath, List<String> currentChilds) throws Exception {
// TODO Auto-generated method stub }
});
}
}

zookeeper客户端使用第三方(zkclient)封装的Api操作节点的更多相关文章

  1. zookeeper客户端使用第三方(Curator)封装的Api操作节点

    1.为什么使用Curator? Curator本身是Netflix公司开源的zookeeper客户端: Curator  提供了各种应用场景的实现封装: curator-framework  提供了f ...

  2. Java 封装 HDFS API 操作

    代码下载地址:点击下载 一:环境介绍 hadoop:2.6 Ubuntu:15.10 eclipse:3.8.1 二:操作包含 推断某个目录是否存在              isExist(fold ...

  3. ZooKeeper客户端原生API的使用以及ZkClient第三方API的使用

    这两部分内容的介绍主要讲的是节点及节点内容和子节点的操作,并且讲解的节点的事件监听以及ACL授权 ZooKeeper客户端原生API的使用 百度网盘地址: http://pan.baidu.com/s ...

  4. Zookeeper系列三:Zookeeper客户端的使用(Zookeeper原生API如何进行调用、ZKClient、Curator)和Zookeeper会话

    一.Zookeeper原生API如何进行调用 准备工作: 首先在新建一个maven项目ZK-Demo,然后在pom.xml里面引入zk的依赖 <dependency> <groupI ...

  5. 聊聊、Zookeeper 客户端 ZkClient

    [ZkClient]  ZkClient 是 GitHub 上一个开源的客户端,如果我们用 Maven 来管理工程,则引用如下. <dependency> <groupId>o ...

  6. Zookeeper客户端Curator基本API

    在使用zookeper的时候一般不使用原生的API,Curator,解决了很多Zookeeper客户端非常底层的细节开发工作,包括连接重连.反复注册Watcher和NodeExistsExceptio ...

  7. zookeeper(六):Zookeeper客户端Curator的API使用详解

    简介 Curator是Netflix公司开源的一套zookeeper客户端框架,解决了很多Zookeeper客户端非常底层的细节开发工作,包括连接重连.反复注册Watcher和NodeExistsEx ...

  8. Zookeeper客户端使用(使用zkclient)

    Zookeeper客户端使用 二.使用zkclient 在pom.xml中加入依赖 <dependency> <groupId>com.101tec</groupId&g ...

  9. Java API操作ZooKeeper

    创建会话 package org.zln.zk; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.Watch ...

随机推荐

  1. UML设计九种图例

    一.作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分. UML语义:描述基于UML的精确元模型定义. UML表示法:定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语 ...

  2. GCD详细介绍

    (1)是基于C语言的底层API (2)用Block定义任务,使用起来非常灵活便捷 (3)提供了更多的控制能力以及操作队列中所不能使用的底层函数 小结 说明:同步函数不具备开启线程的能力,无论是什么队列 ...

  3. curl的特殊使用

    1.php可以通过shell_exec()和其他系统函数使用curl,也可用PHP带的libcurl库. $curl = curl_init("wwww.baidu.com"); ...

  4. Angular22 HttpClient的使用

    1 HttpClient介绍 HttpClient时Http的演进,注意:Http在@angular/http中,而HttpClient在@angular/common/http中: 使用前需要在模块 ...

  5. linq 初步认识

    linq to sql 类 介绍: linq如果不能用的话 重装一下vs就好了 LINQ,语言集成查询(Language Integrated Query)是一组用于c#和Visual Basic语言 ...

  6. ruby 访问权限

    ##################### # 访问权限 ##################### class HeidSoft ##默认方法 def method1 ##### end prote ...

  7. 34- 24 Point game

    http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=43 24 Point game 时间限制:3000 ms  |  内存限制:65535 KB ...

  8. BridgePattern(23种设计模式之一)

    生活中的一个例子 就拿汽车在路上行驶的来说.即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶.这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在 ...

  9. EZOJ #77

    传送门 分析 一个比较神奇的思路 我们考虑分治,对于每一个区间[le,ri]我们计算这个区间中左端点属于[le,mid],右端点属于[mid+1,ri]的情况对答案的贡献 我们求左半个区间的最大最小值 ...

  10. 移动应用中的AR开发,5款最受欢迎工具推荐!

      英文原文:Top 5 Tools for Augmented Reality in Mobile Apps 还记得前段时间在网上很火的 3D 小熊不?托它的福,为相当一部分人科普了增强现实(AR) ...