8.1 连接方法

package com.zookeeper.day01;

import org.apache.zookeeper.*;

import java.io.IOException;

public class ZookeeperWatcher implements Watcher {
    //连接地址
    private static final String ZK_ADDRESS="0.0.0.0:2181";
    //超时时间
    private static final Integer ZK_TIMEOUT=2000;

    private ZooKeeper zooKeeper;

    public ZookeeperWatcher() {
        openConnection(ZK_ADDRESS,ZK_TIMEOUT);

    }

    /**
     * 回调方法,监听连接,监听增删改节点
     * @param watchedEvent
     */
    @Override
    public void process(WatchedEvent watchedEvent) {
        //获取当前的状态
        Event.KeeperState keeperState = watchedEvent.getState();
        //获取通知类型
        Event.EventType eventType=watchedEvent.getType();
        //获取操作节点的路径
        String path=watchedEvent.getPath();

        System.out.println("当前状态为:"+keeperState+"\t通知类型为:"+eventType+"\t操作的节点路径:"+path);

        //已经成功连接
        if (Event.KeeperState.SyncConnected==keeperState){
            //连接状态
            if (Event.EventType.None==eventType){
                System.out.println("--------连接事件回调--------");
            }
        }
    }

    /**
     * 连接方法
     */
    public void openConnection(String zk_address,Integer zk_timeout){
        try {
            zooKeeper = new ZooKeeper(zk_address, zk_timeout, this);
            System.out.println("Zookeeper连接成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    /**
     * 关闭连接
     */
    public void closeConnection(){
        if (zooKeeper!=null){
            try {
                zooKeeper.close();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

 

    public static void main(String[] args) {
        //创建实体类对象
        ZookeeperWatcher zookeeperWatcher=new ZookeeperWatcher();
        //关闭连接
        zookeeperWatcher.closeConnection();
    }
}
View Code 

相关文章:

  • 2021-12-17
  • 2022-01-20
  • 2021-10-09
  • 2022-12-23
  • 2021-12-12
  • 2021-07-04
  • 2022-12-23
  • 2021-08-06
猜你喜欢
  • 2022-02-13
  • 2022-12-23
  • 2021-09-16
  • 2022-12-23
  • 2021-12-28
  • 2021-06-20
  • 2021-06-24
相关资源
相似解决方案