Zookeeper JavaApi 增删改查


官网API

http://zookeeper.apache.org/doc/r3.4.6/api/index.html


JAR包

\zookeeper-3.3.6\lib\
jline-0.9.94.jar


\zookeeper-3.3.6\lib\
log4j-1.2.15.jar


\zookeeper-3.3.6\
zookeeper-3.3.6.jar


Demo代码


注意代码中的注解

package hello.zookeeper.api;import java.util.List;import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooDefs.Ids;
import org.junit.Before;
import org.junit.Test;
import org.apache.zookeeper.ZooKeeper;public class ZkClient {/** 此处必须与zookeeper的zoo.cfg中一样* zk会选择一个连接* 如果windows上运行,hosts也要配置一致*/private static final String connString="zk1:2181,zk2:2181,zk3:2181";/** 超时:连接超时,同步时间间隔,zk有节点值变更,在这个时间内同步*/private static final int sessionTimeout=2000;private ZooKeeper zk=null;@Beforepublic void init() throws Exception{zk=new ZooKeeper(connString, sessionTimeout, new Watcher() {@Overridepublic void process(WatchedEvent event) {System.out.println("监听器:"+event.getType()+"-"+event.getPath());}});}@Testpublic void create() throws Exception{String path="/eclipse";if(zk.exists(path, false)==null){String msg=zk.create(path, "helloworld".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);System.out.println("create:"+msg);}else{System.out.println(path+"已存在!");}}@Testpublic void getChildren() throws Exception{List<String> children = zk.getChildren("/", true);if(children!=null&&children.size()>0){System.out.println("子目录如下:");for(String s:children){System.out.println(s);}}}@Testpublic void setData() throws Exception{//-1表示删除所有版本zk.setData("/eclipse", "hello earth !".getBytes(), -1);getData();}@Testpublic void getData() throws Exception{byte[] data = zk.getData("/eclipse", true, null);System.out.println("getData():"+new String(data));}@Testpublic void deleteZnode() throws Exception{zk.delete("/eclipse", -1);getChildren();}}

-------------

更多的Java,Angular,Android,大数据,J2EE,Python,数据库,Linux,Java架构师,:

http://www.cnblogs.com/zengmiaogen/p/7083694.html


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/539026.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搭建linux测试环境有什么用_谈谈现在搭建网站用什么程序好,选择对的程序是很重要的开头...

目前可以选择的网站程序还是蛮多的&#xff0c;开源的系统也很多&#xff0c;也有很多精品。更多时候&#xff0c;选择网站程序要结合网站的定位。说说dedecms&#xff0c;就是我们都知道的织梦程序&#xff0c;功能很齐全&#xff0c;作为一个简单的资讯门户网站&#xff0c;算…

python练习笔记——利用信号signal处理僵尸进程

1 signal处理僵尸进程的基于语法 利用信号signal处理僵尸进程的方法&#xff1a;signal(SIGCHLD,SIG_IGN)&#xff0c;该方法也是第三种处理僵尸进程的方法。 SIGCHLD&#xff1a;子进程状态改变后产生此信号&#xff0c;父进程需要调用一个wait函数以确定发生了什么。 1&#…

Zookeeper应用:服务端上下线

需求 客户端感知服务器的上下线。 示意图 步骤 服务端&#xff1a; 1、所有机子向Zookeeper注册&#xff0c;注册znode为临时的。 2、有机子下线&#xff0c;连接断开后被Zookeeper自动删除&#xff0c;触发监听事件。 3、有机子上线&#xff0c;触发监听事件。 客户端&am…

哈希表查找失败的平均查找长度_你还应该知道的哈希冲突解决策略

本文首发于 vivo互联网技术 微信公众号 链接&#xff1a;https://mp.weixin.qq.com/s/5vxYoeARG1nC7Z0xTYXELA作者&#xff1a;Xuegui Chen哈希是一种通过对数据进行压缩, 从而提高效率的一种解决方法&#xff0c;但由于哈希函数有限&#xff0c;数据增大等缘故&#xff0c;哈希…

hive 创建访问用户_hive创建角色并赋权

1 角色管理命令1.1 创建角色创建一个新角色&#xff0c;需要 admin 用户执行CREATE ROLE role_name;1.2 删除角色删除一个角色&#xff0c;需要 admin 用户执行DROP ROLE role_name;1.3 显示当前角色显示用户当前角色列表SHOW CURRENT ROLES;1.4 设定角色如果指定了role_name&a…

python 正则替换_5分钟速览Python正则表达式常用函数!五分钟就掌握它!

导读&#xff1a;正则表达式是处理字符串类型的"核武器"&#xff0c;不仅速度快&#xff0c;而且功能强大。本文不过多展开正则表达式相关语法&#xff0c;仅简要介绍python中正则表达式常用函数及其使用方法&#xff0c;以作快速查询浏览。01 Re概览Re模块是python的…

MFC鼠标OnMouseHover使用

ON_WM_MOUSEHOVER消息要生效,要配合ON_WM_MOUSEMOVE一起使用.代码如下:void CYuButton::OnMouseMove(UINT nFlags, CPoint point) {// TODO: 在此添加消息处理程序代码和/或调用默认值TRACKMOUSEEVENT tme { 0 };tme.cbSize sizeof(TRACKMOUSEEVENT);tme.dwFlags TME_HOVER…

oracle 分组_大数据分组怎样才会更快

分组是数据库的常见运算&#xff0c;无论数据如何准备&#xff0c;通常都需要将所有数据遍历。建立索引这时是不起作用的&#xff0c;存储格式才是决定遍历效率的主要因素。数据库中数据的存放虽然是二进制格式的&#xff0c;但普遍IO性能差&#xff0c;库内遍历快&#xff0c;…

java下拉树_参数模板中下拉树级联下拉数据集查询

背景说明在参数表单的制作中会遇到各种各样的需求&#xff0c;如为了方便参数的输入&#xff0c;需要将输入框设计成树状&#xff1b;若参数模板中有两个输入框&#xff0c;每个输入框对应的参数有某种关系&#xff0c;前一个输入框输入参数后&#xff0c;后一个输入框自动关联…

java8 list 行转列_太赞了,Intellij IDEA 竟然把 Java8 的数据流问题这么完美的解决掉了!

使用 IntelliJ IDEA 来帮忙构建你自己的实时模板连接分组《Java 2019 超神之路》《Dubbo 实现原理与源码解析 —— 精品合集》《Spring 实现原理与源码解析 —— 精品合集》《MyBatis 实现原理与源码解析 —— 精品合集》《Spring MVC 实现原理与源码解析 —— 精品合集》《Spr…

线程run方法和start方法的区别

区别 run() 只是一个普通的方法调用&#xff0c;不会开启新的线程。 start() 会开启新的线程&#xff0c;分配新的资源。里面的变量互不影响。 实例 package multithreading;public class MyThread extends Thread {String flag;public MyThread(String flag) {this.flag…

字典的拼接方法

刚看到觉得很简单 试着用 d3 dict1 dict2 就解决了 结果 报类型错误 后来想去遍历 在组合越想越麻烦 下面分享几个方法 d1 {"name":"luoyong","age":36}d2 {"class":"AID1712","start":"python"}方…

python反射、闭包、装饰器_python 闭包装饰器(一)

一、闭包1.举例defouter():x 10def inner(): #内部函数print(x) #外部函数的一个变量returninner#调用inner()函数的方法outer()() #法一fouter()f()#法二注意&#xff1a;inner()是局部变量&#xff0c;在全局范围不可调用(即不能直接调用inner()函数)&#xff0c;但是在法二中…

java list集合自定义排序_Java 通过 Comparator comparing 对 list 自定义 排序

摘要&#xff1a;在日常开发中&#xff0c;经常会用到排序算法&#xff0c;这里记录下日常使用比较多的排序方法&#xff0c;其中包括按指定指定&#xff1a;正序、倒序排序&#xff0c;还有按自定义字段排序的方法&#xff0c;方便日后查看&#xff1b;一&#xff1a;按指定字…

beautifulsoup爬取网页中的表格_用 Python 爬取网页

来自公众号&#xff1a;优达学城Udacity作者&#xff1a;Kerry Parker编译&#xff1a;欧剃作为数据科学家的第一个任务&#xff0c;就是做网页爬取。那时候&#xff0c;我对使用代码从网站上获取数据这项技术完全一无所知&#xff0c;它偏偏又是最有逻辑性并且最容易获得的数据…

Java中Runnable和Thread的区别

概述 Runnable 是接口。 Thread 是类&#xff0c;且实现了Runnable接口。 Thread部分源码 public class Threadimplements Runnable {private static class Caches{static final ConcurrentMap subclassAudits new ConcurrentHashMap();static final ReferenceQueue subcla…

python 神经网络工具_神经网络15分钟入门!使用python从零开始写一个两层神经网络...

本篇是该系列的第三篇&#xff0c;建议在阅读本篇文章之前先看前两篇文章。在本文中将使用python实现之前描述的两层神经网络&#xff0c;并完成所提出的“象限分类”的问题。需要注意的是&#xff0c;虽然标题叫做神经网络15分钟入门&#xff0c;但是到这篇文章&#xff0c;对…

12.3目录结构

目录结构 设计好目录结构 可读性高可维护性高比如一个Foo项目Foo/--- bin/--- foo--- foo/--- tests/--- _init__.py--- test_main.py--- init.py--- main.py---doc--- conf.py---abc.rst--- setup.py--- requirement.txt--- README简要解释一下&#xff1a; bin/:存放项目的一…

pyecharts添加文字_超燃的文字云效果,用Python就能轻松get!

本文转载自公众号&#xff1a;数据森麟(ID&#xff1a;shujusenlin)作者&#xff1a;叶庭云链接&#xff1a;https://blog.csdn.net/fyfugoyfa/ 01 / 词云图词云图是一种用来展现高频关键词的可视化表达&#xff0c;通过文字、色彩、图形的搭配&#xff0c;产生有冲击力地视觉效…

同步关键词synchronized

概述 synchronized是java中的一个关键字&#xff0c;也就是说是Java语言内置的特性。 synchronized( 一个任意的对象&#xff08;锁&#xff09; ){ 代码块中放操作共享数据的代码。 } public synchronized int getIndex() {return 1;}public static synchronized int getN…