一、导入库
  1. 以下库存放在目录lib中:
audience-annotations-0.5.0.jar
jline-0.9.94.jar
log4j-1.2.17.jar
netty-3.10.6.Final.jar
slf4j-api-1.7.25.jar
slf4j-log4j12-1.7.25.jar
 
  1. 以下库存放在zookeeper安装的根目录中:
zookeeper-3.4.12.jar
 
二、ZooKeeper对象的操作
  1. zookeeper对象的创建
String connectString = "hadoop1:2181,hadoop2:2181,hadoop3:2181”;
int sessionTimeout = 2000; ZooKeeper zookeeper = new ZooKeeper(connectString, sessionTimeout, new Watcher() {
@Override
public void process(WatchedEvent event) {
...
}
});
其中:
connectString是连接zookeeper的信息
sessionTimeout是会话超时时间,也就是当一个zookeeper超过该时间没有心跳,则认为该节点故障。
Watcher是一个监控器,一旦触发监控就会回调process方法,触发的事件会存在event对象中。
 
  1. ZooKeeper对象的常用方法
 
方法名 返回值 作用 各参数 备注
String create(final String path, byte data[], List<ACL> acl,CreateMode createMode) 返回值是path的字符串 创建节点
  1. path是创建节点路径
  2. Data是节点中的值
  3. Acl是权限,可以通过Ids类的枚举获取
  4. createMode是创建的类型,有四种,分别为:永久,永久序列化,短暂,短暂序列化。
 
Stat setData(final String path, byte data[], int version) 节点状态对象,里面包含节点的各种信息,包括节点更改的版本,节点创建的日期等等。 设置节点的数据
  1. path是修改数据的节点路径
  2. data是修改之后的值
  3. version是修改哪个版本的节点,-1表示所有节点
 
List<String> getChildren(String path, boolean watch) 节点下子节点集合,只有节点名称,不是全路径 获取子节点列表
  1. path是父节点路径。
  2. watch是是否监控子节点变化情况
 
byte[] getData(String path, boolean watch, Stat stat) 该节点的值 获取该节点的值
  1. path是节点路径
  2. watch是是否监控节点的数据变化
  3. Stat是明确是哪个状态的节点,可以设置为null.
 
void delete(final String path, int version)   删除节点
  1. path是节点路径
  2. version是节点版本,-1表示删除该路径所有版本的节点
 
 

最新文章

  1. AC日记——加密的病历单 openjudge 1.7 12
  2. Octopus系列之一些问题的汇总
  3. 21个高质量的Swift开源iOS App
  4. Cache&amp;Session Viewer
  5. HttpContext 讲解
  6. Lucene学习总结之八:Lucene的查询语法,JavaCC及QueryParser
  7. text-overflow 文字溢出时的设置
  8. Cocos2d-x中父节点scale对子节点的影响
  9. 新秀发挥云17号:RHEL改变以太网地址克隆虚拟机后,
  10. Salesforce开发者学习笔记之二:Salesforce开发平台应用场景
  11. OsharpNS轻量级.net core快速开发框架简明入门教程-基于Osharp实现自己的业务功能
  12. java文件运行的过程
  13. ubuntu 16.04 安装 Mask_RCNN 遇到的问题集锦
  14. 05 python 初学(列表)
  15. Luogu4916 魔力环 莫比乌斯反演、组合、生成函数
  16. Javascript 中调参数的脚本onclick=&quot;select(this)&quot; this 怎么解释
  17. MySQL 事务机制
  18. 网页录像录音功能的实现之MediaRecorder的使用
  19. APP消息推送机制的实现(PUSH)
  20. .net webform 把word转为html

热门文章

  1. Android UI技巧(一)——Android中伸缩自如的9patch图片切法,没有美工自给自足
  2. 销售行业ERP数据统计分析都有哪些维度?
  3. How tomcat works 读书笔记十七 启动tomcat 下
  4. windows下nginx+php
  5. Mac环境svn的使用
  6. Python_linux环境变量和软链接(个人理解)
  7. Eclipse如何提高开发效率
  8. maven常见配置
  9. Ubuntu16.04部署phantomjs的一个问题
  10. zxg项目准备的技术资料