1. public static void testHsh() {
  2. System.out.println("==Hash==");
  3. Jedis jedis = RedisUtil.getJedis();
  4. try {
  5. Map<String, String> pairs = new HashMap<String, String>();
  6. pairs.put("name", "Akshi");
  7. pairs.put("age", "2");
  8. pairs.put("sex", "Female");
  9. jedis.hmset("kid", pairs);
  10. List<String> name = jedis.hmget("kid", "name");// 结果是个泛型的LIST
  11. // jedis.hdel("kid","age"); //删除map中的某个键值
  12. System.out.println(jedis.hmget("kid", "pwd")); // 因为删除了,所以返回的是null
  13. System.out.println(jedis.hlen("kid")); // 返回key为user的键中存放的值的个数
  14. System.out.println(jedis.exists("kid"));// 是否存在key为user的记录
  15. System.out.println(jedis.hkeys("kid"));// 返回map对象中的所有key
  16. System.out.println(jedis.hvals("kid"));// 返回map对象中的所有value
  17. Iterator<String> iter = jedis.hkeys("kid").iterator();
  18. while (iter.hasNext()) {
  19. String key = iter.next();
  20. System.out.println(key + ":" + jedis.hmget("kid", key));
  21. }
  22. List<String> values = jedis.lrange("messages", 0, -1);
  23. values = jedis.hmget("kid", new String[] { "name", "age", "sex" });
  24. System.out.println(values);
  25. Set<String> setValues = jedis.zrange("hackers", 0, -1);
  26. setValues = jedis.hkeys("kid");
  27. System.out.println(setValues);
  28. values = jedis.hvals("kid");
  29. System.out.println(values);
  30. pairs = jedis.hgetAll("kid");
  31. System.out.println(pairs);
  32. } catch (Exception e) {
  33. e.printStackTrace();
  34. } finally {
  35. RedisUtil.getPool().returnResource(jedis);
  36. }
  37. // 清空数据
  38. System.out.println(jedis.flushDB());
  39. // 添加数据
  40. jedis.hset("hashs", "entryKey", "entryValue");
  41. jedis.hset("hashs", "entryKey1", "entryValue1");
  42. jedis.hset("hashs", "entryKey2", "entryValue2");
  43. // 判断某个值是否存在
  44. System.out.println(jedis.hexists("hashs", "entryKey"));
  45. // 获取指定的值
  46. System.out.println(jedis.hget("hashs", "entryKey")); // 批量获取指定的值
  47. System.out.println(jedis.hmget("hashs", "entryKey", "entryKey1"));
  48. // 删除指定的值
  49. System.out.println(jedis.hdel("hashs", "entryKey"));
  50. // 为key中的域 field 的值加上增量 increment
  51. System.out.println(jedis.hincrBy("hashs", "entryKey", 123l));
  52. // 获取所有的keys
  53. System.out.println(jedis.hkeys("hashs"));
  54. // 获取所有的values
  55. System.out.println(jedis.hvals("hashs"));
  56. }

redis hash怎么用的更多相关文章

  1. python处理json和redis hash的坑

    1.使用MySQLdb读取出来的数据是unicode字符串,如果要写入redis的hash中会变成 "{u'eth0_outFlow': 2.5, u'eth1_inFlow': 3.44} ...

  2. redis学习(二) Redis Hash

    Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象. Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿). redis ...

  3. redis hash map

    redis hash的使用详见文章:http://www.miaoyueyue.com/archives/235.html hash操作命令如下: hset(key, field, value):向名 ...

  4. ***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象

    http://redis.readthedocs.org/en/latest/hash/hset.html HSET HSET key field value   (存一个对象的时候key存) 将哈希 ...

  5. Redis hash数据类型操作

    Redis hash是一个string类型的field和value的映射表.一个key可对应多个field,一个field对应一个value.将一个对象存储 为hash类型,较于每个字段都存储成str ...

  6. Redis hash 类型及操作

    原文:http://blog.sina.com.cn/s/blog_5f044a4d0102v01k.html Redis hash是一个string类型的field和value的映射表.它的添加.删 ...

  7. Redis学习第三课:Redis Hash类型及操作

    Redis hash是一个string类型的field和value的映射表.它的添加.删除操作都是O(1)(平均).hash特别适用于存储对象.相较于对象的每个字段存在单个string类型.将一个对象 ...

  8. Python --Redis Hash操作

    一.Redis Hash操作 Redis 数据库hash数据类型是一个string类型的key和value的映射表,适用于存储对象.Redis 中每个 hash 可以存储 232 - 1 键值对(40 ...

  9. C#操作Redis Hash数据表

    /// <summary> /// Redis Hash /// </summary> public static void Redis_Hash() { RedisClien ...

  10. Redis hash(哈希)

    Redis hash可储存多个键值对,适合储存对象的属性. 1.hset key fieldName fileValue    //hset即hash set,set这里是设置的意思.往hash中添加 ...

随机推荐

  1. swift复合类型

     1.元组类型 (tuple) 元组就是多个元素的组合,是一个用圆括号括起来分号分隔的多个数据的一个集合体. 例如:定义一个学生变量,要求姓名 jim,年龄 19,性别 male 的元组变量为  // ...

  2. JS输入框邮箱自动提示(带有demo和源码)(转载)

    今天在javascriptQQ群里面 有童鞋问到 有没有 "JS输入框邮箱自动提示"插件,即说都找遍了github上源码 都没有看到这样类似的插件,然后我想了下 "JS输 ...

  3. jquery easy ui 1.3.4 窗口,对话框,提示框(5)

    5.1.window(窗口) 窗口我们在程序中会大量的使用,比如我们的添加.编辑都可以使用窗口实现,与winform的程序非常的类似.下面的代码是创建一个基本的窗口 $(function () { $ ...

  4. hdu 1012:u Calculate e(数学题,水题)

    u Calculate e Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  5. Java Hour 27 Concurrent

    有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. 27 Hours. 本小时主要过一下多线程相关的基本API. Defining ...

  6. UVALive 6884 GREAT + SWERC = PORTO dfs模拟

    题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show ...

  7. 小甲鱼PE详解之区块表(节表)和区块(节)(PE详解04)

    到此为止,小甲鱼和大家已经学了许多关于 DOS header 和 PE header 的知识.接下来就该轮到SectionTable (区块表,也成节表).(视频教程:http://fishc.com ...

  8. 只用CSS美化选择框

    只用CSS美化选择框 2012-03-02 11:04 by iBlog, 26240 阅读, 14 评论, 收藏, 编辑 <本文译自Style a Select Box Using Only ...

  9. CodeForces 300C --数论

    A - A Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit Statu ...

  10. 模拟 ACdream 1196 KIDx's Pagination

    题目传送门 /* 简单模拟:考虑边界的情况输出的是不一样的,还有思维好,代码能短很多 */ #include <cstdio> #include <iostream> #inc ...