Redisson官網描述:Redisson 是一個在 Redis 的基礎上實現的 Java 駐內存數據網格客戶端(In-Memory Data Grid)。它不僅提供了一系列的 redis 常用數據結構命令服務,還提供了許多分布式服務,例如分布式鎖、分布式對象、分布式集合、分布式遠程服務、分布式調度任務服務等等。Redisson提供的功能十分全面,看看它的一些基本方法使用。
每個Redisson對象實例都會有一個與之對應的Redis數據實例,可以通過調用getName方法來取得Redis數據實例的名稱(key)。
RMap map = redisson.getMap("duixiang");
map.getName();
所有與Redis key相關的操作都歸納在RKeys這個接口里:
RKeys keys = redisson.getKeys();
RBucket是一種通用對象桶可以用來存放任意類型的對象。
RBucket<User> bucket = redisson.getBucket("User");
bucket.set(new User(), 10, TimeUnit.SECONDS);//可以設置有效時間
User user= bucket.get();
RMap
RMap操作哈希數據結構,其保持了元素的插入順序。
RMap<String, String> rmap = redisson.getMap("map");
String user1= rmap.put("123", "小黑");
String user2= rmap.remove("123");
rmap.expire(10, TimeUnit.SECONDS);//可設置過期時間
RSet
RSet操作集合數據結構,其保證了每個元素的唯一性。
RSet<String> rset = redisson.getSet("xiaohei");
rset.add("xiaobai");
rset.remove("xiaobai");
rset.expire(10, TimeUnit.SECONDS);
RList
RList操作列表數據結構,其確保了元素插入時的順序。
RList<String> rlist = redisson.getList("xiaohei");
rlist.add("xiaobai");
rlist.get(0);
rlist.remove("xiaobai");
rlist.expire(10, TimeUnit.SECONDS);
RLock
分布式可重入鎖RLock
RLock lock = redisson.getLock("lock");
try {boolean locked = lock.tryLock(0,500, TimeUnit.MILLISECONDS);//業務處理......
} catch (Exception e) {//錯誤原因.......
} finally {lock.unlock();
}