zookeeper学习之zkclient节点增删改查<九>

zkclient提供了一系列接口来创建节点,参数就简单了很多,这边是zkclient 0.1 version

一眼看去,其实感觉原来的zk api 功能更丰富呀,奇怪,不该还有权限控制吗?

214611_lwoe_2277632.png

简单一点就是穿一个参数就可以啦,这边创建一个持久节点

222640_Bukm_2277632.png

path:指定数据节点的节点路径

data:节点的初始数据nei内容

mode:节点类型

createParents:布尔类型,是否需要创建父节点

这边create方法的设计,和构造函数的设计是类似的,一个套一个,这边创建的时候,启动一个线程

223712_lkaM_2277632.png

最后执行的是ZkConnection,这边就用了Ids.OPEN_ACL_UNSAFE,可是我不能加点 其他权限?

224001_g0yH_2277632.png

创建了删除 也是很简单的,就是这样

zkClient.delete(path);

在0.1中目前就看到这样一个delete方法,封装的套路和创建是一样的,和我想象的套路有点不一样啊

public boolean delete(final String path) {
    try {
        retryUntilConnected(new Callable<Object>() {

            @Override
            public Object call() throws Exception {
                _connection.delete(path);
                return null;
            }
        });

        return true;
    } catch (ZkNoNodeException e) {
        return false;
    }
}
public void delete(String path) throws InterruptedException, KeeperException {
    _zk.delete(path, -1);
}

改节点的数据,就简单的两个方法,api的实现还是那样的

220951_XLO0_2277632.png

public void writeData(final String path, Object datat, final int expectedVersion) {
    final byte[] data = serialize(datat);
    retryUntilConnected(new Callable<Object>() {

        @Override
        public Object call() throws Exception {
            _connection.writeData(path, data, expectedVersion);
            return null;
        }
    });
}

剩下一个查数据,真是让人感觉奇怪,这边又可以用了默认的wather。

221429_gO0M_2277632.png

今天真是奇怪的一天,哎,看着今天的代码也是奇奇怪怪的,难道我看了假的zkclient代码吗?难道原来java api的一些功能没有用?

221929_xXjK_2277632.png

 

 

转载于:https://my.oschina.net/u/2277632/blog/1531546

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值