前文

pom.xml文件增加依赖

<!--        Zookeeper依赖-->
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.7.0</version>
</dependency>

新建java文件:ZookeeperTest

/**
* @author LEHOSO
* @date 2021/11/21
* @apinote
*/ public class ZookeeperTest { public static void main(String[] args) throws Exception {
// 初始化ZooKeeper实例(zk地址、会话超时时间,与系统默认一致, watcher)
//步骤一:创建Zookeeper客户端
//参数1:zk地址;参数2:会话超时时间(与系统默认一致);参数3:监视器
ZooKeeper zk = new ZooKeeper(
"192.168.142.10:2181," +
"192.168.142.20:2181," +
"192.168.142.30:2181", 300000, new Watcher() {
@Override
//监控所有被触发的事件(也就是在这里进行事件的处理)
public void process(WatchedEvent watchedEvent) {
System.out.println("事件类型为:" + watchedEvent.getType());
System.out.println("事件发生的路径:" + watchedEvent.getPath());
System.out.println("通知状态为:" + watchedEvent.getState());
}
}); //步骤二:创建目录节点
//参数1:要创建的节点路径;参数2:节点数据;参数3:节点权限;参数4:节点类型
zk.create("/testRootPath", "testRootData".getBytes(),
Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); //步骤三:创建子目录节点
zk.create("/testRootPath/testChildPathOne", "testChildPathOne".getBytes(),
Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); //步骤四:获取目录节点数据
//参数1:存储节点数据的路径;
//参数2:是否需要监控此节点(true/false)
//参数3:stat节点的统计信息(一般设置null)
System.out.println("testRootData节点数据为:" +
new String(zk.getData("/testRootPath", false, null)));
//步骤五:获取子目录节点数据
// 取出子目录节点列表
System.out.println(zk.getChildren("/testRootPath", true)); //步骤六:修改子目录节点数据,使得监听触发
//参数1:存储子目录节点数据的路径;
//参数2:要修改的数据;
//参数3:预期要匹配的版本(设置为-1,则可匹配任何节点的版本)
zk.setData("/testRootPath/testChildPathOne", "modifyChildDataOne".getBytes(), -1);
//步骤七:判断目录节点是否存在
System.out.println("目录节点状态[" + zk.exists("/testRootPath", true) + "]"); //步骤八:删除子目录节点
zk.delete("/testRootPath/testChildPathOne", -1);
//步骤九:删除目录节点
zk.delete("/testRootPath", -1);
zk.close();
}
}

GitHub文件下载

HadoopDemo

六、Java API操作zookeeper节点的更多相关文章

  1. Java API操作ZooKeeper

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

  2. Java API 操作Zookeeper

    一.依赖 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookee ...

  3. zookeeper的java api操作

    zookeeper的java api操作 创建会话: Zookeeper(String connectString,int sessionTimeout,Watcher watcher) Zookee ...

  4. MongoDB Java API操作很全的整理

    MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,一般生产上建议以共享分片的形式来部署. 但是MongoDB官方也提供了其它语言的客户端操作API.如下图所示: 提供了C.C++ ...

  5. Java curator操作zookeeper获取kafka

    Java curator操作zookeeper获取kafka Curator是Netflix公司开源的一个Zookeeper客户端,与Zookeeper提供的原生客户端相比,Curator的抽象层次更 ...

  6. hadoop2-HBase的Java API操作

    Hbase提供了丰富的Java API,以及线程池操作,下面我用线程池来展示一下使用Java API操作Hbase. 项目结构如下: 我使用的Hbase的版本是 hbase-0.98.9-hadoop ...

  7. java api操作

    java api操作 导入开发包 将hbase安装包中lib下包导入java项目   创建表   Configuration conf = HBaseConfiguration.create(); c ...

  8. Java代码操作zookeeper

    .personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...

  9. hive-通过Java API操作

    通过Java API操作hive,算是测试hive第三种对外接口 测试hive 服务启动 package org.admln.hive; import java.sql.SQLException; i ...

随机推荐

  1. 使用Mybatis的一些基本配置及Mybatis与数据库交互测试验证

    1.简介 什么是MyBatis? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.My ...

  2. 题解 [AGC017C] Snuke and Spells

    题目传送门 Description 有 \(n\) 个球排在一起,每个球有颜色 \(a_i\),若当前有 \(k\) 个球,则会将所有 \(a_i=k\) 的球删掉.有 \(m\) 次查询,每次将 \ ...

  3. jenkins容器内安装python3

    前言 很多小伙伴可能在考虑 jenkins 拉取了 github 上的代码后,发现还越少 python3 环境,那能怎么办呢? 咨询了一位运维朋友给我的答案是,将 python3 挂载到容器工作目录上 ...

  4. Spring动态添加定时任务

    Spring动态添加定时任务 一.背景 二.需求和实现思路 1.能够动态的添加一个定时任务. 2.能够取消定时任务的执行. 3.动态的修改任务执行的时间. 4.获取定时任务执行的异常 三.代码实现 四 ...

  5. 莱特币(LTC)开发环境搭建

    Linux系统下搭建莱特币LTC开发环境 1.简介 2.LTC 客户端下载 3.解压到一个固定的目录中 4.启动客户端 4.1.参数解释: 4.2.更多详细的配置 5.执行命令测试一下 6.获取莱特币 ...

  6. 最容易出错的C语言指针

    C语言指针说难不难但是说容易又是最容易出错的地方,因此不管是你要做什么只要用到C指针你就跳不过,今天咱们就以 十九个例子来给大家简单的分析一下指针的应用,最后会有C语言视频资料提供给大家更加深入的参考 ...

  7. .NET Core TLS 协议指定被我钻了空子~~~

    前言 此前,测试小伙伴通过工具扫描,平台TLS SSL协议支持TLS v1.1,这不安全,TLS SSL协议至少是v1.2以上才行,想到我们早已将其协议仅支持v1.3,那应该非我们平台问题.我依然自信 ...

  8. linux 蓝牙开发调试(rtl8821cs模块)

    刚调完rtl8821cs的wifi功能,项目需要打通蓝牙配网功能. 调试过程中遇到各种问题中间几乎放弃,倒腾了几天最后还是打通了,顺便记录下过程. 通信接口:SDIO @WiFi.Uart @BT;工 ...

  9. GPS与AGPS定位服务

    最近客户反馈车子启动从车库开到地面后,机器定位相对OBD内部定位会慢很多. 机器定位主要依赖定位模块 + AGPS辅助定位. 其中定位模块目前主流支持的有以下三种定位系统. 一.GPS(全球定位系统) ...

  10. Spring Cloud 微服务实战——nacos 服务注册中心搭建(附源码)

    作为微服务的基础功能之一的注册中心担任重要的角色.微服务将单体的服务拆分成不同的模块下的服务,而不同的模块的服务如果进行通信调用呢?这就需要服务注册与发现.本文将使用阿里开源项目 nacos 搭建服务 ...