RedisTemplate处理String与Hash数据类型方法

作者:袖梨 2026-05-20

掌握RedisTemplate的核心用法能够显著提升Redis操作效率,本文将详细介绍其常用方法封装与数据类型操作技巧。

RedisTemplate用法

封装自己的操作方法

1. 单键删除操作:通过封装delete方法,只需传入键名参数即可调用redisTemplate的删除功能。

RedisTemplate操作String及Hash数据方式

redisTemplate.delete(key)

2. 多键批量删除:与单键删除类似,区别在于参数采用可变参数形式接收多个键名。

redisTemplate.delete(keys)

对应方法签名示例:public void deleteByKey(String ...keys)

3. 设置键值过期时间:自定义方法需接收三个参数,分别是键名、时间数值和时间单位。

redisTemplate.expir(key,time,TimeUnit.MINUTES)

4. 获取剩余过期时间:通过指定键名参数即可查询键值的过期时长。

redisTemplate.getExpire(key)

5. 键存在性检查:该方法常用于判断指定键是否已存在于Redis中。

redisTemplate.hasKey(key)

String 类型的操作

1. 缓存添加操作:提供三种设置字符串值的方式,包括直接操作、绑定操作和值操作接口。

// 通过redisTemplate设置值
redisTemplate.boundValueOps("StringKey").set("StringValue");
redisTemplate.boundValueOps("StringKey").set("StringValue",1, TimeUnit.MINUTES);
//通过BoundValueOperations设置值
BoundValueOperations stringKey = redisTemplate.boundValueOps("StringKey");
stringKey.set("StringVaule");
stringKey.set("StringValue",1, TimeUnit.SECOND);
//通过ValueOperations设置值
ValueOperations ops = redisTemplate.opsForValue();
ops.set("StringKey", "StringVaule");
ops.set("StringValue","StringVaule",1, TimeUnit.SECOND);

2. 缓存键删除:返回布尔值表示删除操作是否成功执行。

Boolean i = redisTemplate.delete(key)

3. 数值递增:对指定键的值进行正向调整,支持长整型参数。

redisTemplate.boundValueOps("key").increment(4L)

4. 数值递减:通过传入负值参数实现数值的减少操作。

redisTemplate.boundValueOps("key").increment(-4L)

Hash 类型数据相关操作

1. 哈希数据存储:演示三种不同的哈希数据添加方式,满足不同场景需求。

redisTemplate.boundHashOps("HashKey").put("SmallKey", "HashVaue");
BoundHashOperations hashKey = redisTemplate.boundHashOps("HashKey");
hashKey.put("SmallKey", "HashVaue");
HashOperations hashOps = redisTemplate.opsForHash();
hashOps.put("HashKey", "SmallKey", "HashVaue");

2. 过期时间设置:为哈希类型数据设置生存周期,支持两种设置语法。

redisTemplate.boundValueOps("HashKey").expire(1,TimeUnit.SECOND);
redisTemplate.expire("HashKey",1,TimeUnit.SECOND);

3. 批量添加映射:使用HashMap数据结构一次性添加多个键值对到哈希表中。

HashMap hashMap = new HashMap<>();
redisTemplate.boundHashOps("HashKey").putAll(hashMap );

4. 获取所有子键:展示三种获取哈希表中所有字段名的方法实现。

Set keys1 = redisTemplate.boundHashOps("HashKey").keys();
BoundHashOperations hashKey = redisTemplate.boundHashOps("HashKey");
Set keys2 = hashKey.keys();
HashOperations hashOps = redisTemplate.opsForHash();
Set keys3 = hashOps.keys("HashKey");

总结

本文全面解析了RedisTemplate的常用操作方法,涵盖字符串与哈希数据类型的关键操作技巧,为开发者提供实用参考。

  1. Redis中StringRedisTemplate中HashOperations的使用详解
  2. StringRedisTemplate操作hash实现过程
  3. Springboot中RedisTemplate设置String、Hash、List过期时间
  4. 解读RedisTemplate的各种操作(set、hash、list、string)
  5. RedisTemplate常用操作方法总结(set、hash、list、string等)

相关文章

精彩推荐