【分布式】Redis 分布式之List_redissonclient.getlist_比嗨皮兔的博客-CSDN博客
说明
配置文件参考:https://blog.csdn.net/qq_38428623/article/details/123217001?utm_source=app&app_version=5.1.1&code=app_1562916241&uLinkId=usr1mkqgl919blen
————————————————
版权声明:本文为CSDN博主「比嗨皮兔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38428623/article/details/123340439
package com.demo.redis.list;
import org.redisson.api.RList;
import org.redisson.api.RedissonClient;
import org.redisson.client.codec.StringCodec;
import org.springframework.stereotype.Component;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.util.List;
/**
* RedisList
*
* @author 王思勤
*/
@Component
public class RedisList {
@Resource
private RedissonClient redissonClient;
/**
* 获取 字符串 的 RSet
*
* @param name 名称
* @return 返回 值
*/
public RList<String> getList(String name) {
RList<String> list = redissonClient.getList(name, StringCodec.INSTANCE);
Assert.notNull(list, "list is null");
return list;
}
/**
* 新增 list 数据
*
* @param name 名称
* @param value 值
* @return 返回 是否新增成功
*/
public boolean set(String name, String value) {
return this.getList(name).add(value);
}
/**
* 新增 list 数据
*
* @param name 名称
* @param values 值
* @return 返回 是否新增成功
*/
public boolean set(String name, List<String> values) {
return this.getList(name).addAll(values);
}
/**
* 读取 list 的数据
*
* @param name 名称
* @return 返回 是否新增成功
*/
public List<String> readAll(String name) {
return this.getList(name).readAll();
}
/**
* 验证 是否包含
*
* @param name 名称
* @param value 值
* @return 返回 是否 包含
*/
public boolean contains(String name, String value) {
return this.getList(name).contains(value);
}
/**
* 验证 是否包含
*
* @param name 名称
* @param values 值
* @return 返回 是否 包含
*/
public boolean containsAll(String name, List<String> values) {
return this.getList(name).containsAll(values);
}
/**
* 移出第一个元素并且返回
*
* @param name 名称
* @return 返回 移出元素
*/
public String removeFirst(String name) {
return this.getList(name).remove(0);
}
/**
* 移出最后一个元素并且返回
*
* @param name 名称
* @return 返回 移出元素
*/
public String removeLast(String name) {
int size = this.getList(name).size();
return this.getList(name).remove(size - 1);
}
/**
* 移出元素并且返回
*
* @param name 名称
* @param index 索引
* @return 返回 移出元素
*/
public String remove(String name, int index) {
return this.getList(name).remove(index);
}
}