六、Java API操作zookeeper节点
前文
- 一、CentOS7 hadoop3.3.1安装(单机分布式、伪分布式、分布式
- 二、JAVA API实现HDFS
- 三、MapReduce编程实例
- 四、Zookeeper3.7安装
- 五、Zookeeper的Shell操作
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文件下载
六、Java API操作zookeeper节点的更多相关文章
- Java API操作ZooKeeper
创建会话 package org.zln.zk; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.Watch ...
- Java API 操作Zookeeper
一.依赖 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookee ...
- zookeeper的java api操作
zookeeper的java api操作 创建会话: Zookeeper(String connectString,int sessionTimeout,Watcher watcher) Zookee ...
- MongoDB Java API操作很全的整理
MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,一般生产上建议以共享分片的形式来部署. 但是MongoDB官方也提供了其它语言的客户端操作API.如下图所示: 提供了C.C++ ...
- Java curator操作zookeeper获取kafka
Java curator操作zookeeper获取kafka Curator是Netflix公司开源的一个Zookeeper客户端,与Zookeeper提供的原生客户端相比,Curator的抽象层次更 ...
- hadoop2-HBase的Java API操作
Hbase提供了丰富的Java API,以及线程池操作,下面我用线程池来展示一下使用Java API操作Hbase. 项目结构如下: 我使用的Hbase的版本是 hbase-0.98.9-hadoop ...
- java api操作
java api操作 导入开发包 将hbase安装包中lib下包导入java项目 创建表 Configuration conf = HBaseConfiguration.create(); c ...
- Java代码操作zookeeper
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); ...
- hive-通过Java API操作
通过Java API操作hive,算是测试hive第三种对外接口 测试hive 服务启动 package org.admln.hive; import java.sql.SQLException; i ...
随机推荐
- java课堂测试3第一部分(未完善)
package test3;import java.util.*; public class Grade2 { static String[][] mis=new String[500][4]; // ...
- bzoj1834 ZJOI2010网络扩容(费用流)
给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费用. 求: 1.在不扩容的情况下,1到N的最大流: 2.将1到N的最大流增加K所需的最小扩容费用. 其中\(n ...
- [NOIP2013 提高组] 华容道 P1979 洛谷
[NOIP2013 提高组] 华容道 P1979 洛谷 强烈推荐,更好的阅读体验 经典题目:spfa+bfs+转化 题目大意: 给出一个01网格图,和点坐标x,y空格坐标a,b,目标位置tx,ty要求 ...
- C++手动加载CLR运行托管程序(CLR Hosting)
转载自:http://www.linuxidc.com/Linux/2012-10/72293.htm 机制介绍 有些时候主程序是通过C/C++实现的,但是我们希望通过托管代码来扩展非托管程序,从而也 ...
- 3.4 Common Principles 通用原则
3.4 Common Principles 通用原则 Before going into details, let's see some overall DDD principles; 在讨论细节之前 ...
- 兜底机制——leader到底做了什么?
Case 在之前一次年底考评的时候,有一位leader将一个案例同时用到了自己和下属身上,老板发出了责问: 这个项目到底你是负责人,还是你下面的同学是负责人,如果下面的同学是负责人,为什么要算到你的头 ...
- 封装ARX给.Net调用
1:创建工程名.def的文件,内容如下: 2:def文件位置: 3:属性页配置: 4:acrxEntryPoint.cpp下面添加如下代码(可以传参数) 5:c#调用 怕自己忘记,记录一下.
- FastAPI 学习之路(五十六)将token存放在redis
在之前的文章中,FastAPI 学习之路(二十九)使用(哈希)密码和 JWT Bearer 令牌的 OAuth2,FastAPI 学习之路(二十八)使用密码和 Bearer 的简单 OAuth2,Fa ...
- 设计模式 - Bridge 桥模式
Bridge桥模式也属于"的单一职责"模式中的典型模式.问题描述:我们绘制图形时,图形可以有不同形状以及不同颜色,比如圆形可以是红的,绿的,方形可以是红的绿的,如果用代码来描绘这些 ...
- Linkerd 2:5 分种厘清 Service Mesh 相关术语
API Gateway(API 网关) API gateway 位于应用程序的前面,旨在解决身份验证和授权.速率限制以及为外部消费者提供公共访问点等业务问题. 相比之下,service mesh 专注 ...