“Java 操作 Znode 节点”的版本间的差异
		
		
		
		
		
		跳到导航
		跳到搜索
		
				
		
		
	
Jihongchang(讨论 | 贡献)  | 
				Jihongchang(讨论 | 贡献)   | 
				||
| (未显示同一用户的3个中间版本) | |||
| 第54行: | 第54行: | ||
=== 修改 ===  | === 修改 ===  | ||
| − | + | <syntaxhighlight lang="java">  | |
| + | ......  | ||
| + |     /**  | ||
| + |      * 改数据  | ||
| + |      * @throws Exception  | ||
| + |      */  | ||
| + |     @Test  | ||
| + |     public void update() throws Exception {  | ||
| + |         cf.setData().forPath("/qf2", "oooo".getBytes());  | ||
| + |     }  | ||
| + | ......  | ||
| + | </syntaxhighlight>  | ||
=== 删除 ===  | === 删除 ===  | ||
| + | <syntaxhighlight lang="java">  | ||
| + | ......  | ||
| + |     /**  | ||
| + |      * 删除节点及其子节点  | ||
| + |      * @throws Exception  | ||
| + |      */  | ||
| + |     @Test  | ||
| + |     public void delete() throws Exception {  | ||
| + |         cf.delete().deletingChildrenIfNeeded().forPath("/qf2");  | ||
| + |     }  | ||
| + | ......  | ||
| + | </syntaxhighlight>  | ||
=== 查看 Znode 的状态 ===  | === 查看 Znode 的状态 ===  | ||
| + | <syntaxhighlight lang="java">  | ||
| + | ......  | ||
| + |     /**  | ||
| + |      * 查看节点下状态  | ||
| + |      * @throws Exception  | ||
| + |      */  | ||
| + |     @Test  | ||
| + |     public void stat() throws Exception {  | ||
| + |         Stat stat = cf.checkExists().forPath("/qf");  | ||
| + |         System.out.println(stat);  | ||
| + |     }  | ||
| + | ......  | ||
| + | </syntaxhighlight>  | ||
| + | [[文件:ZooKeeper查看节点下状态.png|无|缩略图|700x700像素]]  | ||
2022年8月17日 (三) 11:47的最新版本
查询
package org.example;
import org.apache.curator.framework.CuratorFramework;
import org.junit.Test;
import java.util.List;
public class Demo2 {
    CuratorFramework cf = ZkUtil.cf();
    /**
     * 查询子节点
     * @throws Exception
     */
    @Test
    public void getChildren() throws Exception {
        List<String> strings = cf.getChildren().forPath("/");
        for (String string : strings) {
            System.out.println(string);
        }
    }
    /**
     * 查询子节点数据
     * @throws Exception
     */
    @Test
    public void getData() throws Exception {
        byte[] bytes = cf.getData().forPath("/qf");
        System.out.println(new String(bytes, "UTF-8"));
    }
}
添加
......
    /**
     * 创建新节点
     * @throws Exception
     */
    @Test
    public void create() throws Exception {
        cf.create().withMode(CreateMode.PERSISTENT).forPath("/qf2", "uuuu".getBytes());
    }
......
修改
......
    /**
     * 改数据
     * @throws Exception
     */
    @Test
    public void update() throws Exception {
        cf.setData().forPath("/qf2", "oooo".getBytes());
    }
......
删除
......
    /**
     * 删除节点及其子节点
     * @throws Exception
     */
    @Test
    public void delete() throws Exception {
        cf.delete().deletingChildrenIfNeeded().forPath("/qf2");
    }
......
查看 Znode 的状态
......
    /**
     * 查看节点下状态
     * @throws Exception
     */
    @Test
    public void stat() throws Exception {
        Stat stat = cf.checkExists().forPath("/qf");
        System.out.println(stat);
    }
......