前置条件
1、开启 Redis 服务器,命令行执行 redis-server.exe。
2、创建 SpringBoot 工程,在引入基本的依赖之外,还需要额外引入:
redis.clients
jedis
4.2.3
使用 Redis 的五种数据类型
前置条件
连接 Redis 服务器并测试通过:
Jedis jedis = new Jedis("localhost");
System.out.println(jedis.ping());
//输出:PONG
字符串(String)
基本的 get & set 方法使用:
jedis.set("myKey", "myValue");
System.out.println(jedis.get("myKey"));
//输出:
//myValue
其他的常用方法参考:Redis String 命令。
哈希(Hash)
基本的 hmset & hget & hgetAll 方法使用:
Map map = new HashMap<>();
map.put("mapKey1", "mapValue1");
map.put("mapKey2", "mapValue2");
map.put("mapKey3", "mapValue3");
jedis.hmset("myMap", map);
System.out.println(jedis.hget("myMap", "mapKey1"));
System.out.println(jedis.hgetAll("myMap").toString());
//输出:
//mapValue1
//{mapKey2=mapValue2, mapKey1=mapValue1, mapKey3=mapValue3}
其他常用方法参考:Redis Hash 命令。
列表(List)
基本的 lpush & lindex & lrange 方法的使用:
jedis.lpush("myList", "1", "2", "3", "A", "B", "C");
System.out.println(jedis.lindex("myList", 1));
System.out.println(jedis.lrange("myList", 0, 2));
//输出:
//B
//[C, B, A]
注意:lpush 是将一个或多个值插入到列表头部。
其他常用方法参考:Redis List 命令。
集合(Set)
基本的 sadd 和 smembers 方法的使用:
jedis.sadd("mySet", "a", "b", "c", "d", "e");
System.out.println(jedis.smembers("mySet"));
//输出:
//[d, a, c, b, e]
注意:Set 是无序集合。
其他常用方法参考:Redis Set 命令。
有序集合(sorted set)
基本的 zadd & zrange 方法的使用:
jedis.zadd("mySortedSet", 2, "b");
jedis.zadd("mySortedSet", 3, "c");
jedis.zadd("mySortedSet", 1, "a");
System.out.println(jedis.zrange("mySortedSet", 0, 2));
//输出:
//[a, b, c]
注意:
1、添加时需要指定一个 score,集合就是通过这个 score 从低到高进行排序。
2、排序好的集合存放的起始下标从 0 开始。
其他常用方法参考:Redis sorted set 命令。