温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-07-22 10:38:53 来源:亿速云 阅读:191 作者:小猪 栏目:编程语言

这篇文章主要为大家展示了JavaApi如何实现更新删除及读取节点,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。

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时,则该节点不存在。

以上就是关于JavaApi如何实现更新删除及读取节点的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI