pom引入:src/main/resources新建log4j.properties: log4j.rootLogger=INFO, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d%p[%c]- %m%n log4j.appender.logfile=org.apache.log4j.FileAppender log4j.appender.logfile.File=target/spring.log log4j.appender.logfile.layout=org.apache.log4j.PatternLayout log4j.appender.logfile.layout.ConversionPattern=%d%p[%c]- %m%n public class zkClient { private ZooKeeper zkClient = null; @Before public void init() throws Exception { zkClient = new ZooKeeper("192.168.196.129:2181", 30000, new Watcher() { @Override public void process(WatchedEvent watchedEvent) { //收到事件通知后的回调函数 System.out.println(watchedEvent.getType() + "--" + watchedEvent.getPath()); //再次启动监听 try { List junit junit RELEASE org.apache.logging.log4j log4j-core 2.8.2 org.apache.zookeeper zookeeper 3.5.7 children = zkClient.getChildren("/", true); for (String child : children) { System.out.println(child); } } catch (Exception e) { e.printStackTrace(); } } }); } // 创建子节点 @Test public void create() throws Exception { System.out.println("helo"); // 参数 1:要创建的节点的路径; 参数 2:节点数据 ; 参数 3:节点权限 ;参数 4:节点的类型 String nodeCreated = zkClient.create("/test", "hello world".getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); System.out.println(nodeCreated); } // 获取子节点 @Test public void getChildren() throws Exception { List children = zkClient.getChildren("/", true); for (String child : children) { System.out.println(child); } } // 判断znode是否存在 @Test public void exist() throws Exception { Stat stat = zkClient.exists("/test", false); System.out.println(stat == null ? "not exist" : "exist"); } }



