03java客户端api基本功能

一、准备

1.eclipse新建一个javaProject工程,并创建一个lib文件夹(folder)
2.将zookeeper.tar.gz解压,把根目录下的一个zookeeper*.jar以
	及lib下的所有jar包拷贝到eclipse中的lib目录下(大概六个)
3.在eclipse中全选jar包,右键,Build Path,Add to Build Path
4.即可新建class写内容啦

二、功能:增

注释:在/目录下创建一个eclipse节点,其中存放数据为“hello eclipse”。

import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.ZooKeeper;
import org.junit.Test;
public class ZookeeperClientDemo {	
	@Test
	//Eclipse项目中右击属性选择【build path】的【add Libararies】界面 ,选择JUnit导入。
	public void testCreate() throws Exception{
		
		//构造一个zookeeper客户端对象
		ZooKeeper zk = new ZooKeeper("node01:2181,node02:2181,node03:2181", 2000, null);
		//传zookeeper地址;传超时时间;传实现类接口,即收到通知它需要干嘛,不需要则null;
		
		String create = zk.create("/eclipse", "hello eclipse".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
		//路径;任意数据,最大1M;访问权限,一般用不着;创建模式,四种组合
		
		System.out.println(create);		
		zk.close();
	}
}

三、功能:改

注释:将重复代码写入Before中的方法中。

ZooKeeper zk = null;
@Before
public void test() throws Exception {
	zk = new ZooKeeper("node01:2181,node02:2181,node03:2181", 2000, null);
}
@Test
public void testUpdate() throws Exception {
	zk.setData("/eclipse", "我爱你".getBytes(), -1);	
	//-1就是修改所有版本
	zk.close();
}

四、功能:查

ZooKeeper zk = null;
@Before
public void test() throws Exception {zk = new ZooKeeper("node01:2181,node02:2181,node03:2181", 2000, null);
@Test
public void testGet() throws Exception {
	byte[] data = zk.getData("/eclipse", false, null);
	//查那个数据;是否监听;那个版本,null
	//得到的是二进制,使用String将其转换为utf-8的编码
	System.out.println(new String(data, "utf-8"));
}

五、功能:查所有子节点

ZooKeeper zk = null;
@Before
public void test() throws Exception {zk = new ZooKeeper("node01:2181,node02:2181,node03:2181", 2000, null);

@Test
public void testGetChilder() throws Exception {
	List<String> childer = zk.getChildren("/bb", false);
	//注意:返回的子节点只有名字,没有路径
	for(String child : childer) {
		System.out.println(child);
	}
	zk.close();
}

六、功能:删除

ZooKeeper zk = null;
@Before
public void test() throws Exception {zk = new ZooKeeper("node01:2181,node02:2181,node03:2181", 2000, null);

@Test
public void testDelete() throws Exception {
	zk.delete("/eclipse", -1);
	//-1就是所有版本
	zk.close();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hao难懂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值