Redis中编程的返回值类型认识(redis 返回值类型)
Redis是一种开源的使用ANSI C语言编写的基于内存的key-value存储系统,它的设计取代了MEMCACHED的弱点,在很少的行为变更里实现高效率的数据读写服务,具有很大的潜力替代MEMCACHED使用。Redis是一种不同于传统数据库的非关系型数据库,提供的一系列操作总的而言,可以在大多数编程语言中使用,因此,Redis也不可避免的面临了各种编程语言的各种返回值类型。
从 Redis 中返回数据值,首先要明确Redis 中的数据类型,Redis可以识别以下六种数据类型:字符串(String),散列(Hash),列表(list),集合(set),有序集合(SortedSet)及位图(Bitmap)。根据不同语言编写驱动代码,从 Redis 中可以读取不同类型数据。
从字符串类型读取数据,在 Redis 中以字符串类型存储,在 java 语言中可以使用 get(String key) 方法返回数据,返回类型为 String;以byt[ ]类型返回 Redis ,使用 get(String key) 将此数据以 byt[ ]类型返回,需要使用字节转换工具转换成需要的类型;以哈希类型返回 Redis,使用 hget()方法,返回类型为 Map;以列表类型返回 Redis,使用 lrange()方法,返回类型为 List;以集合类型返回 Redis,使用srandmember()方法,返回类型为 set;以有序集合类型返回 Redis,使用zrevrange()方法,返回类型为 List ,元素类型为Set;以位图类型返回 Redis,使用getbit()方法,返回类型为BitSet 。
下面的代码是利用 jedis 驱动(针对 Redis 的 Java 语言驱动)基于 Java 语言实例化一个 Redis 实例:
Jedis jedis = new Jedis(“127.0.0.1”, 6379);
上面的代码中实例化了一个 jedis,接下来使用 jedis 来读取 Redis 数据:
// String类型
String value = jedis.get(“name”);
// Hash 类型
Map map = jedis.hgetAll(“hashkey”);
// List 类型
List list = jedis.lrange(“listkey”, 0, -1);
// Set 类型
Set set = jedis.smembers(“setkey”);
// SortedSet 类型
Set set = jedis.zrevrangeWithScores(“zsetkey”, 0, -1);
// BitSet 类型
boolean b = jedis.getbit(“bitSetkey”, 0);
从上面的代码中可以看出,Redis 具有多种数据类型,返回的结果根据不同的数据类型,Java 也有相应的方法返回相应的类型,综上,不同语法中,Redis 编程中返回值类型主要有:String、Map、List、Set、SortedSet 和 BitSet 。