0
点赞
收藏
分享

微信扫一扫

1.Zookeeper理论基础

左小米z 2024-03-10 阅读 6

文章目录

一、导入jar包

在Eclipse导入slf4j.api-1.6.1.jar和zookeeper-3.4.10.jar。
步骤:右键此项目 > Build Path > Configure Build Path > 在 Java Build Path 的 Libraries 栏下点击 Add External JARs > 导入jar包 > 点击 Apply and Close 即可

二、创建java文件

创建ZooKeeperEx1.java文件,内容如下

import java.io.IOException;
import java.util.List;
import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.data.Stat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class ZooKeeperEx1{
  private static final int SESSION_TIMEOUT = 30000;
  public static final Logger LOGGER =
      LoggerFactory.getLogger("ZooKeeperEx1Log");
  private static Watcher watcher =  new Watcher() {
    public void process(WatchedEvent event) { 
      System.out.println("process : " + event.getType());
      LOGGER.info("process : " + event.getType());
    }
  };  
  public static void main(String[] args) throws
      IOException,KeeperException,InterruptedException {
    // 连接ZooKeeper
    ZooKeeper zkp = new ZooKeeper("master:2181,slave1:2181,slave2:2181",
        SESSION_TIMEOUT,watcher);
    // 创建ZNode
    zkp.create("/test", "znodedata".getBytes(),
        Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
    zkp.create("/test/seq", "childdata".getBytes(),
        Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT_SEQUENTIAL);
    // 判断ZNode是否存在
    Stat stat = zkp.exists("/test", true);
    if (zkp.exists("/test", false) != null) {
      System.out.println("/test exists now.");
    }
    // 更新ZNode数据内容
    zkp.setData("/test", "newdata".getBytes(), stat.getVersion());   
    // 读取ZNode数据
    String data = new String(zkp.getData("/test", true, stat));
        System.out.println(data);  
    // 获取子节点
    List<String> children=zkp.getChildren("/test", true );
    for(String child :children) {
      System.out.println(child);
     }
    // 删除ZNode子节点
    zkp.delete("/test/"+children.get(0), -1);
    // 删除ZNode节点
    zkp.delete("/test", -1);
    zkp.close();
  }
}

三、导出jar包

步骤:右键此项目 > Export > java > Runnable jar file>
在这里插入图片描述

三、运行jar文件

#java -jar [文件路径]

举报

相关推荐

0 条评论