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方法去获取。
异步方式:
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实现更新删除及读取节点 的全部内容, 来源链接: utcz.com/z/339118.html