JavaApi实现更新删除及读取节点

作者:秋风飒飒吹 时间:2023-11-10 07:30:33 

1.更新

同步方式:


/**
    * 三个参数
    * the path of the node
    * the data to set
    * the expected matching version
    */
   Stat stat = zooKeeper.setData("/set/node1", "NODE1".getBytes(), 1);

返回值Stat中封装了set命令中的返回值,可以通过Stat的各种get方法去获取。

JavaApi实现更新删除及读取节点

异步方式:


zooKeeper.setData("/set/node1", "nnn".getBytes(), -1, new AsyncCallback.StatCallback() {
     public void processResult(int rc, String path, Object ctx, Stat stat) {
       System.out.println(rc);//0代表修改成功
       System.out.println(path);//节点路径
       System.out.println(ctx);//上下文参数
       System.out.println(stat);//属性描述对象
     }
   },"ctx");

2.删除

同步方式:


/**
* @param path
*    the path of the node to be deleted.
* @param version
*    the expected node version. 当为-1时,表示不考虑当前节点的版本信息。
*/
zooKeeper.delete("/delete/node1",0);

异步方式:


//VoidCallback:异步回调接口
zooKeeper.delete("/delete/node2", -1, new AsyncCallback.VoidCallback() {
 public void processResult(int rc, String path, Object ctx) {
   System.out.println(rc);//0表示删除成功
   System.out.println(path);//节点路径
   System.out.println(ctx);//上下文信息
 }
},"ctx");

3.读取

getData(String path,boolean b,Stat stat) 同步方式
getData(String path,boolean b,AsyncCallback.DataCallback callBack,Object ctx) 异步方式

path:znode路径

b:是否使用连接对象中注册的监视器。

stat:返回znode的元数据。

callBack:异步回调接口。

ctx:传递上下文参数。

4.查看子节点

List<String> getChildren(String path,boolean b) 同步方式

List<String> getChildren(String path,boolean b,AsyncCallback.DataCallback callBack,Object ctx) 异步方式

path:znode路径

b:是否使用连接对象中注册的监视器。

callBack:异步回调接口。

ctx:传递上下文参数。

5.判断节点是否存在

Stat exist(String path,boolean b) 同步方式
Stat exist(String path,boolean b,AsyncCallback.DataCallback callBack,Object ctx) 异步方式

当Stat为null时,则该节点不存在。

来源:https://www.cnblogs.com/wwjj4811/p/12936294.html

标签:Java,Api,更新,删除,读取
0
投稿

猜你喜欢

  • Spring Cloud微服务架构Sentinel数据双向同步

    2021-07-16 04:17:04
  • @Value如何获取yml和properties配置参数

    2021-12-12 13:24:01
  • Android自定义View实现带4圆角或者2圆角的效果

    2023-04-08 04:32:10
  • 在IDEA中安装MyBatis Log Plugin插件,执行mybatis的sql语句(推荐)

    2022-02-17 08:04:43
  • Android 仿QQ头像自定义截取功能

    2023-05-14 00:13:21
  • Spring学习教程之AOP模块的概述

    2022-06-04 00:17:13
  • C#手工双缓冲技术用法实例分析

    2023-05-09 07:13:44
  • Java文件读写IO/NIO及性能比较详细代码及总结

    2021-11-28 12:56:30
  • 基于java中两个对象属性的比较

    2023-08-23 05:25:02
  • Spring Boot中如何使用Convert接口实现类型转换器

    2023-05-09 20:28:37
  • 使用Android Studio创建OpenCV4.1.0 项目的步骤

    2022-05-03 23:16:42
  • 关于SpringMVC的异常处理机制详细解读

    2023-01-26 17:32:45
  • Android自定义开关按钮源码解析

    2021-12-27 06:45:27
  • IDEA中的maven没有dependencies解决方案

    2021-08-01 11:58:50
  • Android实现语音识别代码

    2022-06-03 03:26:33
  • mybatis多表查询的实现(xml方式)

    2021-07-11 01:21:38
  • Java Runtime的使用详解

    2021-10-23 06:46:39
  • Android实现网络多线程断点续传下载功能

    2021-05-29 18:22:24
  • C# Winform 调用系统接口操作 INI 配置文件的代码

    2023-03-04 11:49:54
  • 解析Java和Eclipse中加载本地库(.dll文件)的详细说明

    2023-11-11 01:23:31
  • asp之家 软件编程 m.aspxhome.com