通过 Java 操作 redis -- hash 哈希表基本命令

目录

使用命令 hset,hget

使用命令 hexists

使用命令 hdel

使用命令 hkeys,hvals

使用命令 hmget,hmset


关于 redis hash 哈希表类型的相关命令推荐看Redis - hash 哈希表

要想通过 Java 操作 redis,首先要连接上 redis 服务器,推荐看通过 Java 操作 redis -- 连接 redis

        本博客只介绍了一小部分常用的命令,其他的命令根据上面推荐的博客也能很简单的使用出来(推荐先看上面推荐的博客,有 redis 的原生命令)

使用命令 hset,hget

    /**
     * 使用命令 hset,hget
     * */
    public static void test1(Jedis jedis){
        //清除 redis 所有数据库中的所有数据
        jedis.flushAll();

        //向 redis 中添加一个哈希表类型的键值对,哈希表中添加了 f1 - 111 键值对
        //返回值为添加成功的键值对个数
        long result1=jedis.hset("key1","f1","111");
        System.out.println("result1:"+result1);

        //用哈希表作为参数,直接将哈希表中的键值对都添加到 key2 的哈希表中
        //返回值为添加成功的键值对个数
        HashMap<String,String> hashMap=new HashMap<>();
        hashMap.put("f1","111");
        hashMap.put("f2","111");
        hashMap.put("f3","111");
        long result2=jedis.hset("key2",hashMap);
        System.out.println("result2:"+result2);

        //获取 key1 对应的哈希表中,f1 对应的 value 值
        String result3=jedis.hget("key1","f1");
        System.out.println("result3:"+result3);
    }

运行结果

使用命令 hexists

    /**
     * 使用命令 hexists
     * */
    public static void test2(Jedis jedis){
        //清除 redis 所有数据库中的所有数据
        jedis.flushAll();
        jedis.hset("key1","f1","111");

        //判断 key1 对应的哈希表中是否存在 key 为 f1 的键值对,存在返回 true ,否则返回 false
        boolean result1=jedis.hexists("key1","f1");
        System.out.println("result1:"+result1);

        boolean result2=jedis.hexists("key1","f2");
        System.out.println("result2:"+result2);
    }

运行结果

使用命令 hdel

    /**
     * 使用命令 hdel
     * */
    public static void test3(Jedis jedis){
        //清除 redis 所有数据库中的所有数据
        jedis.flushAll();
        jedis.hset("key1","f1","111");
        jedis.hset("key1","f2","111");
        jedis.hset("key1","f3","111");

        //删除 key1 对应的哈希表中 key 为 f1 和 f2 的键值对
        long result1=jedis.hdel("key1","f1","f2");
        System.out.println("result1:"+result1);

        boolean result2=jedis.hexists("key1","f1");
        System.out.println("result2:"+result2);

        boolean result3=jedis.hexists("key1","f2");
        System.out.println("result3:"+result3);
    }

运行结果

使用命令 hkeys,hvals

    /**
     * 使用命令 hkeys,hvals
     * */
    public static void test4(Jedis jedis){
        //清除 redis 所有数据库中的所有数据
        jedis.flushAll();
        jedis.hset("key1","f1","111");
        jedis.hset("key1","f2","222");
        jedis.hset("key1","f3","333");

        //获取 key1 对应的哈希表中所有键值对的 key 值
        Set<String> result1=jedis.hkeys("key1");
        System.out.println("result1:"+result1);
        //获取 key1 对应的哈希表中所有键值对的 value 值
        List<String> result2=jedis.hvals("key1");
        System.out.println("result2:"+result2);
    }

运行结果

使用命令 hmget,hmset

    /**
     * 使用命令 hmget,hmset
     * */
    public static void test5(Jedis jedis){
        //清除 redis 所有数据库中的所有数据
        jedis.flushAll();

        Map<String,String>map=new HashMap<>();
        map.put("f1","111");
        map.put("f2","222");
        map.put("f3","333");

        //批量插入键值对到 key1 对应的 哈希表中,但要使用 Map 作为参数,类似于 hset
        //插入成功返回 OK,否则返回 FALSE
        String result1=jedis.hmset("key1",map);
        System.out.println("result1:"+result1);

        //批量获取 key1 对应的哈希表中 key 为 f1,f2,f3 对应的 value 值
        List<String> result2=jedis.hmget("key1","f1","f2","f3");
        System.out.println("result2:"+result2);

    }

运行结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小林想被监督学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值