jedis调用redis之Hash

package com.alex.xiyoubang;

import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import redis.clients.jedis.Jedis;

public class JedisHash {
    static Jedis jedis = new Jedis("192.168.1.171", 6379);

    public static void main(String[] args) {  
        System.out.println("==Set==");
        // 清空数据
        System.out.println(jedis.flushDB());
        Map<String, String> wukong = new HashMap<String, String>();  
        wukong.put("name", "悟空");  
        wukong.put("age", "1000");  
        wukong.put("sex", "男");  
        jedis.hmset("dasheng", wukong);
        // 结果是个泛型的LIST  
        List<String> name = jedis.hmget("dasheng", "name");
        System.out.println(name);
        //删除map中的某个键值  
        jedis.hdel("dasheng","age"); 
        // 因为删除了,所以返回的是null
        System.out.println(jedis.hmget("dasheng", "age"));   
        // 返回key为dasheng的键中存放的值的个数  
        System.out.println(jedis.hlen("dasheng"));
        // 是否存在key为dasheng的记录 
        System.out.println(jedis.exists("dasheng")); 
        // 返回map对象中的所有key 
        System.out.println(jedis.hkeys("dasheng")); 
        // 返回map对象中的所有value 
        System.out.println(jedis.hvals("dasheng")); 
        wukong.put("age", "1900");
        Iterator<String> iter = jedis.hkeys("dasheng").iterator();  
        while (iter.hasNext()) {  
            String key = iter.next();  
            System.out.println(key + ":" + jedis.hmget("dasheng", key));  
        }  

        //获取name,age,sex对应的值
        List<String> values = jedis.hmget("dasheng", new String[] { "name", "age", "sex" });  
        System.out.println(values); 
        //获取所有的key
        Set<String> keys = jedis.hkeys("dasheng");  
        System.out.println(keys); 
        //获取所有的value
        values = jedis.hvals("dasheng");  
        System.out.println(values); 
        //获取dasheng对象
        wukong = jedis.hgetAll("dasheng");  
        System.out.println(wukong);  


        // 清空数据  
        System.out.println(jedis.flushDB());  
        // 添加数据  
        jedis.hset("xiyoubang", "悟空", "11");  
        jedis.hset("xiyoubang", "八戒", "22");  
        jedis.hset("xiyoubang", "悟净", "33");  
        // 判断某个值是否存在  
        System.out.println(jedis.hexists("xiyoubang", "悟空"));  
        // 获取指定的值  
        System.out.println(jedis.hget("xiyoubang", "悟空")); 
        // 批量获取指定的值  
        System.out.println(jedis.hmget("xiyoubang", "悟空", "八戒"));  
        // 删除指定的值  
        System.out.println(jedis.hdel("xiyoubang", "悟空"));  
        // 为key中的域 field 的值加上增量 increment  
        System.out.println(jedis.hincrBy("xiyoubang", "悟空", 123l));  
        // 获取所有的keys  
        System.out.println(jedis.hkeys("xiyoubang"));  
        // 获取所有的values  
        System.out.println(jedis.hvals("xiyoubang"));  
    }

}

Hash命令详细说明见:http://blog.csdn.net/qq_32347977/article/details/50504993

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Java 中使用 Redis hash,可以使用 Jedis 或者 Lettuce 这样的 Redis 客户端库。 下面是使用 Jedis 客户端库来操作 Redis hash 的示例代码: ```java import redis.clients.jedis.Jedis; public class RedisHashDemo { public static void main(String[] args) { // 创建 Jedis 对象 Jedis jedis = new Jedis("localhost"); // 设置一个字段的值 jedis.hset("myhash", "field1", "Hello"); // 获取一个字段的值 String value = jedis.hget("myhash", "field1"); System.out.println(value); // 设置多个字段的值 jedis.hmset("myhash", "field2", "World", "field3", "!"); // 获取多个字段的值 List<String> values = jedis.hmget("myhash", "field1", "field2", "field3"); System.out.println(values); // 获取所有字段的值 Map<String, String> allValues = jedis.hgetAll("myhash"); System.out.println(allValues); // 删除一个或多个字段 jedis.hdel("myhash", "field1", "field2"); // 检查一个字段是否存在 boolean exists = jedis.hexists("myhash", "field1"); System.out.println(exists); // 将一个字段的值增加一个整数 jedis.hincrBy("myhash", "field4", 1); // 获取所有字段名 Set<String> fields = jedis.hkeys("myhash"); System.out.println(fields); // 获取字段数量 Long length = jedis.hlen("myhash"); System.out.println(length); // 关闭连接 jedis.close(); } } ``` 这段代码中,我们首先创建了一个 Jedis 对象,然后通过 Jedis 对象调用相应的方法来操作 Redis hash。这些方法与 Redis hash 的操作命令是一一对应的,使用起来非常方便。最后,我们需要关闭连接以释放资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值