Skip to content

Redis 常用操作示例

Value 操作

java
@Autowired
private RedisTemplatePrivateWrapper redis;

// 设置值
redis.boundValueOps("key").set("value");

// 设置值并指定过期时间(秒)
redis.boundValueOps("key").set("value", 3600, TimeUnit.SECONDS);

// 获取值
Object value = redis.boundValueOps("key").get();

// 删除
redis.delete("key");

// 使用快速方法
redis.valuePut("key", value, 3600L);
Object val = redis.valueGet("key");

Hash 操作

java
// 设置 Hash
Map<String, Object> map = new HashMap<>();
map.put("field1", "value1");
map.put("field2", "value2");
redis.boundHashOps("hashKey").putAll(map);

// 获取整个 Hash
Map<Object, Object> entries = redis.boundHashOps("hashKey").entries();

// 获取单个字段
Object fieldValue = redis.boundHashOps("hashKey").get("field1");

// 使用快速方法
redis.hashPutAll("hashKey", map, 3600L);
Map<String, Object> entries = redis.hashEntriesGet("hashKey");

List 操作

java
// 左推入(先进后出)
redis.boundListOps("listKey").leftPushAll("item1", "item2", "item3");

// 获取全部
List<Object> list = redis.boundListOps("listKey").range(0, -1);

// 使用快速方法
redis.listPutAll("listKey", Arrays.asList("a", "b", "c"), 3600L);
List<Object> list = redis.listValuesGet("listKey");

Set 操作

java
// 添加元素
redis.boundSetOps("setKey").add("member1", "member2");

// 获取所有成员
Set<Object> members = redis.boundSetOps("setKey").members();

// 使用快速方法
redis.setPutAll("setKey", new HashSet<>(Arrays.asList("a", "b")), 3600L);
Set<Object> set = redis.setValuesGet("setKey");

操作速查表

操作类型标准方法快速方法
ValueboundValueOps(key).set/getvaluePut/valueGet
HashboundHashOps(key).putAll/entrieshashPutAll/hashEntriesGet
ListboundListOps(key).leftPushAll/rangelistPutAll/listValuesGet
SetboundSetOps(key).add/memberssetPutAll/setValuesGet

Power By 数字海南