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. C++复制构造函数和赋值符的区别

    From  http://blog.csdn.net/randyjiawenjie/article/details/6666937 非常感谢原作者分享. class CTest{public: CTe ...

  2. jquery 展开折叠菜单

    jquery 展开折叠菜单 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <ht ...

  3. VS2010编写动态链接库DLL及单元测试用例,调用DLL测试正确性

    转自:http://blog.csdn.net/testcs_dn/article/details/27237509 本文将创建一个简单的动态链接库,并编写一个控制台应用程序使用该动态链接库,该动态链 ...

  4. JavaBeans、EJB和POJO详解

    转自:http://developer.51cto.com/art/200906/130814.htm J2EE学习者越来越多,J2EE本身技术不断在发展,涌现出各种概念,本文章试图从一种轻易理解的角 ...

  5. Android Studio 一些使用经验

    一.Mac或Win 7 配置环境,以gradle为例 (1).可以在这里找gradle下载,或者去官网啦 Mac添加环境变量: 1.启动Terminal终端 2.输入cd ~/ 进入当前用户的home ...

  6. WebView的写法

    public class MainActivity extends Activity { private WebView wv; @Override protected void onCreate(B ...

  7. eclipse集成maven3后,创建java项目详细图解

    1.创建一个Java项目 1)File--->New--->Other--->Maven--->Maven Projet 2)选择maven-archetype-quickst ...

  8. js:数据结构笔记12--排序算法(2)

    高级排序算法:(处理大数据:百万以上) 希尔排序:是插入排序的优化版: 首先设置间隔数组,然后按照每个间隔,分别进行排序: 如第一个间隔为5,首先a[5]与a[0]进行插入排序;然后a[6]和a[0] ...

  9. 什么是C#编程语言明明白白学C#

    什么是C#编程语言明明白白学C# C#是微软公司发布的一门面向对象的编程语言.它作为一门语言,则具备语言的四个要素.并且,它符合编程语言的四个要素的特性.同时,它作为面向对象的编程语言,可以解决各种复 ...

  10. Windows内核下操作字符串!

    * Windows内核下操作字符串! */ #include <ntddk.h> #include <ntstrsafe.h> #define BUFFER_SIZE 1024 ...