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. js prototype

    1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是以A为原型的,并且能进行扩展.我们称B的原型为A. 2 javasc ...

  2. Codeigniter:如何写一个好的Model

    本文是关于在Code Igniter PHP MVC框架中如何编写Model方法. CRUD 方法 CRUD 是Create, Retrieve, Update, and Delete的缩写. 这些是 ...

  3. ytu 1980:小鼠迷宫问题(DFS 深度优先搜索)

     小鼠迷宫问题 Time Limit: 2 Sec  Memory Limit: 64 MB Submit: 1  Solved: 1 [Submit][Status][Web Board] Desc ...

  4. mac平台下面ruby环境搭建

    一.安装xcode 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包 二.安装 RVM curl -L ...

  5. ubuntu apt-get 总结 install xxx -d能下载安装包(含依赖)不安装_和卸载(转载)

    [举例] 目前常用的 ========== *更新本机中的数据库缓存: sudo apt-get update *查找包含部分关键字的软件包: sudo apt-cache search <你要 ...

  6. 测试服务API的_苏飞开发助手_使用说明

    1 工具说明_json对象字符串拼接 2 工具说明_纯字符串拼接

  7. Tomcat日志配置

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" ...

  8. wait、notify、notifyAll和Condition

    wait().notify()和notifyAll()是基于synchronized Condition是基于Lock的. Condition是在java 1.5中才出现的,它用来替代传统的Objec ...

  9. SU sugain命令学习

    不足之处,欢迎广大博友批评指正.

  10. Android 2D游戏引擎AndEngine配置环境

    Android 2D游戏引擎AndEngine配置环境 1.2  配置环境 在任何编程中,都需要一些软件或者硬件的支持.否则,没有硬件软件是不可能存在的,而想要编写对应语言的的程序,这需要对应语言库和 ...