Zookeeper实例ZkClient API-获取节点数据内容
来源:互联网 发布:贾似道 知乎 编辑:程序博客网 时间:2024/06/05 06:06
import org.I0Itec.zkclient.IZkDataListener;import org.I0Itec.zkclient.ZkClient;/** * * @ClassName: Get_Data_Sample * @Description: TODO(ZkClient获取节点数据) * @author * @date 2017年6月14日 下午1:03:46 * */public class Get_Data_Sample { public static void main(String[] args) throws Exception { String path = "/zk-book"; ZkClient zkClient = new ZkClient("localhost:2181", 5000); zkClient.createEphemeral(path, "123"); zkClient.subscribeDataChanges(path, new IZkDataListener() { public void handleDataDeleted(String dataPath) throws Exception { System.out.println("Node " + dataPath + " deleted."); } public void handleDataChange(String dataPath, Object data) throws Exception { System.out.println("Node " + dataPath + " changed, new data: " + data); } }); // System.out.println(zkClient.readData(path)); zkClient.writeData(path,"456"); Thread.sleep(1000); zkClient.delete(path); Thread.sleep( Integer.MAX_VALUE ); }}输出:Node /zk-book changed, new data: 456Node /zk-book deleted.
注意:
getData方法有一个 boolean returnNullIfPathNotExists参数,这样如果当指定的节点不存在就不会抛异常而是返回null.通过调用getData()接口,就可以获得指定节点的内容,这里方法的返回值,在ZkClient内部已经被反序列化成了指定对象。
扩展
参考
1.《从Paxos到Zookeeper:分布式一致性原理与实践》
2. http://javadox.com/com.101tec/zkclient/0.4/org/I0Itec/zkclient/ZkClient.html
阅读全文
0 0
- Zookeeper实例ZkClient API-获取节点数据内容
- Zookeeper实例ZkClient API-更新节点内容
- Zookeeper实例ZkClient API-获取子节点列表
- Zookeeper实例ZkClient API-创建节点
- Zookeeper实例ZkClient API-删除节点
- Zookeeper实例ZkClient API-检查节点是否存在
- Zookeeper实例原生API--同步获取节点数据
- Zookeeper实例原生API--异步获取节点数据
- Zookeeper实例Curator API-使用Curator获取数据内容
- Zookeeper实例ZkClient API-创建一个Zookeeper客户端
- Zookeeper API 和 Zkclient
- Zookeeper实例原生API--同步获取子节点列表
- Zookeeper实例原生API--异步获取子节点列表
- zookeeper zkclient API小案例
- Zookeeper实例原生API--同步更新节点数据
- Zookeeper实例原生API--异步更新节点数据
- Zookeeper实例Curator API-使用Curator更新数据内容
- Zookeeper命令行操作(常用命令;客户端连接;查看znode路径;创建节点;获取znode数据,查看节点内容,设置节点内容,删除节点;监听znode事件;telnet连接zookeeper)
- 解决浅拷贝的几种方式
- Zookeeper实例ZkClient API-获取子节点列表
- [java]让人尴尬的一段代码
- IO中同步、异步与阻塞、非阻塞的区别
- MFC异常“所需资源不可用”
- Zookeeper实例ZkClient API-获取节点数据内容
- windows 利用SC 删除与增加 服务
- 设计师经常面对的11种职场问题
- 利用base64函数,对文件进行转码加密
- 241. Different Ways to Add Parentheses
- Ubuntu16.04 shell字体放大缩小
- Linux(ArchLinux) 下配置jdk+eclipse+tomcat
- Code资格赛
- 汇编学习笔记 第五章