一、Redisson簡介
Redisson是Redis官方推薦的Java版的Redis客戶端。
Redisson提供了使用Redis的最簡單和最便捷的方法。Redisson的宗旨是促進使用者對Redis的關注分離(Separation of Concern),從而讓使用者能夠將精力更集中地放在處理業務邏輯上。也可以將Redisson輕松的整合到像Spring和Hibernate這樣的常用框架里。
Github鏈接:
https://github.com/redisson/redisson
二、Redisson使用
(一)引入依賴
<dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.16.3</version> </dependency>
(二)具體使用
package com.cskaoyan; import org.redisson.Redisson; import org.redisson.api.*; import org.redisson.config.Config; import java.util.Iterator; import java.util.List; /** * @Classname MyRedissionTest * @Description * @Author terrance_swn */ public class MyRedissionTest { public static void main(String[] args) { //1 創建redission的config對象並配置redis服務器(此處使用singleServer) Config config = new Config(); config.useSingleServer().setAddress("redis://localhost:6379"); //2 創建redis客戶端redissionClient RedissonClient redissonClient = Redisson.create(config); //3 使用五種數據結構 useString(redissonClient); useHash(redissonClient); useList(redissonClient); useSet(redissonClient); useSortedSet(redissonClient); } /** * Hash類型 * @param redissonClient */ private static void useHash(RedissonClient redissonClient) { RMap<Object, Object> map = redissonClient.getMap("myFirstMap"); map.put("productId2","100055301"); Object productId2 = map.get("productId2"); System.out.println(productId2); } /** * String 數據類型 * @param redissonClient */ private static void useString(RedissonClient redissonClient) { RBucket<Object> bucket = redissonClient.getBucket("myString-key"); bucket.set("{\"userName\":\"test\",\"userPwd\":\"test\",\"email\":\"xxx@163.com\",\"captcha\":\"3552\"}"); Object o = bucket.get(); System.out.println(o); } /** * List數據類型 * @param redissonClient */ private static void useList(RedissonClient redissonClient) { List<String> list = redissonClient.getList("listKey-32"); list.add("listValue1"); list.add("listValue2"); String s = list.get(0); System.out.println(s); System.out.println(list); } /** * Set數據類型 * @param redissonClient */ private static void useSet(RedissonClient redissonClient) { RSet<String> set = redissonClient.getSet("setKey-32"); set.add("setValue"); Iterator<String> iterator = set.iterator(); while (iterator.hasNext()) { String next = iterator.next(); System.out.println(next); } } /** * Zset數據類型 * @param redissonClient */ private static void useSortedSet(RedissonClient redissonClient) { RScoredSortedSet<String> sortedSet = redissonClient.getScoredSortedSet("sortedKey-32"); sortedSet.add(1.0, "zs"); sortedSet.add(2.0, "lisi"); Double score = sortedSet.getScore("zs"); System.out.println(score); Integer rank = sortedSet.rank("zs"); System.out.println(rank); } }
(三)數據類型的解釋
1.Hash
RMap<Object, Object> map = redissonClient.getMap("myFirstMap");
map.put("productId2","100055301");

2.String
RBucket<Object> bucket = redissonClient.getBucket("myString-key");
bucket.set("{\"userName\":\"test\",\"userPwd\":\"test\",\"email\":\"xxx@163.com\",\"captcha\":\"3552\"}");

3.List
List<String> list = redissonClient.getList("listKey-32");
list.add("listValue1");
list.add("listValue2");

4.Set
RSet<String> set = redissonClient.getSet("setKey-32");
set.add("setValue");

5.Zset
RScoredSortedSet<String> sortedSet = redissonClient.getScoredSortedSet("sortedKey-32"); sortedSet.add(1.0, "zs"); sortedSet.add(2.0, "lisi");

