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

时间:2021-05-19

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方法去获取。

异步方式:

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章