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();
}