我们在使用 Redis 的时候,会需要获取以某个字符串开头的所有 key
批量获取 key
根据前缀获取 key
代码如下:
/**
* 根据前缀获取所有的key
* 例如:pro_*
*/
public Set<String> getListKey(String prefix) {
Set<String> keys = redisTemplate.keys(prefix.concat("*"));
return keys;
}
prefix 作为我们匹配的前缀,例如:pro_*,即就是我们需要获取所有以 pro_ 开头的 key 集合,我们得到一个 Set 集合
获取所有的 key
代码如下:
/**
* 获取所有的key
*/
public Set<String> getListKey(String prefix) {
Set<String> keys = redisTemplate.keys("*");
return keys;
}
注意:我们这里要写 *,而不能为空,不然获取不到 key
批量获取 value
/**
* 获取所有的key
*/
public List<String> getListKey(String prefix) {
Set<String> keys = redisTemplate.keys("*");
List<String> values = redisTemplate.opsForValue().multiGet(keys);
return values;
}