您现在的位置是:主页 > news > 龙岗网站建设-信科网络/北京seo薪资

龙岗网站建设-信科网络/北京seo薪资

admin2025/6/4 23:02:36news

简介龙岗网站建设-信科网络,北京seo薪资,vs做动态网站登录,查看邮箱注册的网站参考了网上的一个例子,现在程序可以跑了,但是由于时间原因,明天再做深入研究。 这里先记下参考的例子及其代码(https://blog.csdn.net/u010398771/article/details/82420504) package zookeeper;import java.util.List; import java.util.c…

龙岗网站建设-信科网络,北京seo薪资,vs做动态网站登录,查看邮箱注册的网站参考了网上的一个例子,现在程序可以跑了,但是由于时间原因,明天再做深入研究。 这里先记下参考的例子及其代码(https://blog.csdn.net/u010398771/article/details/82420504) package zookeeper;import java.util.List; import java.util.c…

参考了网上的一个例子,现在程序可以跑了,但是由于时间原因,明天再做深入研究。

这里先记下参考的例子及其代码(https://blog.csdn.net/u010398771/article/details/82420504)

package zookeeper;import java.util.List;
import java.util.concurrent.CountDownLatch;import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.Watcher.Event.KeeperState;
import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.data.Stat;public class MyZookeeper implements Watcher {private ZooKeeper zookeeper;/*** 超时时间*/private static final int SESSION_TIME_OUT = 2000;private CountDownLatch countDownLatch = new CountDownLatch(1);@Overridepublic void process(WatchedEvent event) {if (event.getState() == KeeperState.SyncConnected) {System.out.println("Watch received event");countDownLatch.countDown();}}/*** 连接zookeeper* * @param host* @throws Exception*/public void connectZookeeper(String host) throws Exception {zookeeper = new ZooKeeper(host, SESSION_TIME_OUT, this);countDownLatch.await();System.out.println("zookeeper connection success");}/*** 创建节点* * @param path* @param data* @throws Exception*/public String createNode(String path, String data) throws Exception {return this.zookeeper.create(path, data.getBytes(),Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);}/*** 获取路径下所有子节点* * @param path* @return* @throws KeeperException* @throws InterruptedException*/public List<String> getChildren(String path) throws KeeperException,InterruptedException {List<String> children = zookeeper.getChildren(path, false);return children;}/*** 获取节点上面的数据* * @param path*            路径* @return* @throws KeeperException* @throws InterruptedException*/public String getData(String path) throws KeeperException,InterruptedException {byte[] data = zookeeper.getData(path, false, null);if (data == null) {return "";}return new String(data);}/*** 设置节点信息* * @param path*            路径* @param data*            数据* @return* @throws KeeperException* @throws InterruptedException*/public Stat setData(String path, String data) throws KeeperException,InterruptedException {Stat stat = zookeeper.setData(path, data.getBytes(), -1);return stat;}/*** 删除节点* * @param path* @throws InterruptedException* @throws KeeperException*/public void deleteNode(String path) throws InterruptedException,KeeperException {zookeeper.delete(path, -1);}/*** 获取创建时间* * @param path* @return* @throws KeeperException* @throws InterruptedException*/public String getCTime(String path) throws KeeperException,InterruptedException {Stat stat = zookeeper.exists(path, false);return String.valueOf(stat.getCtime());}/*** 获取某个路径下孩子的数量* * @param path* @return* @throws KeeperException* @throws InterruptedException*/public Integer getChildrenNum(String path) throws KeeperException,InterruptedException {int childenNum = zookeeper.getChildren(path, false).size();return childenNum;}/*** 关闭连接* * @throws InterruptedException*/public void closeConnection() throws InterruptedException {if (zookeeper != null) {zookeeper.close();}}
}
package zookeeper;import java.util.List;
/*** Hello world!* */
public class App {public static void main(String[] args) throws Exception {MyZookeeper zookeeper = new MyZookeeper();zookeeper.connectZookeeper("127.0.0.1:2181");List<String> children = null;children = zookeeper.getChildren("/");System.out.println(children);zookeeper.closeConnection();}
}