RedisTemplate 字符串操作深度解析
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
@Component
public class RedisStringExample {
private final StringRedisTemplate stringRedisTemplate;
@Autowired
public RedisStringExample(RedisTemplate<String, String> redisTemplate) {
// 注意:StringRedisTemplate是RedisTemplate的子类,专门用于操作字符串的模板。
this.stringRedisTemplate = (StringRedisTemplate) redisTemplate;
}
// 设置键值对
public void setKeyValue(String key, String value) {
stringRedisTemplate.opsForValue().set(key, value);
}
// 获取键对应的值
public String getValueByKey(String key) {
return stringRedisTemplate.opsForValue().get(key);
}
// 删除键
public void deleteKey(String key) {
stringRedisTemplate.delete(key);
}
// 获取键是否存在
public boolean keyExists(String key) {
return stringRedisTemplate.hasKey(key);
}
// 设置键的过期时间
public void setKeyExpiration(String key, long timeout, TimeUnit unit) {
stringRedisTemplate.expire(key, timeout, unit);
}
// 获取键的过期剩余时间
public Long getKeyExpiration(String key) {
return stringRedisTemplate.getExpire(key);
}
// 重命名键
public void renameKey(String oldKey, String newKey) {
stringRedisTemplate.rename(oldKey, newKey);
}
// 获取所有键
public Set<String> getAllKeys() {
return stringRedisTemplate.keys("*");
}
}
这段代码提供了使用StringRedisTemplate
进行字符串操作的一系列方法。它展示了如何使用StringRedisTemplate
来设置、获取、删除键值对,检查键是否存在,设置和获取键的过期时间,以及重命名键。同时,它还演示了如何使用keys
方法获取所有的键。这些操作是开发者在使用Redis作为数据存储时的常用操作。
评论已关闭