数据库
首页 > 数据库> > Redis 通过key前缀获取所有key的值

Redis 通过key前缀获取所有key的值

作者:互联网

Redis 通过key前缀获取所有key的值

public void getRedis(String cardId) {
        // 获取所有的key
        Set<String> keys = redisTemplate.keys("card_key*");
        for (String key : keys) {
            // 获取key对应值
            Object value = redisTemplate.opsForValue().get(key);
            if (value.equals(cardId)) {
                redisTemplate.delete(key);
            }
        }
    }

 改进:

/**
 * 根据前缀获取所有的key
 * 例如:pro_*
 */
public Set<String> getListKey(String prefix) {
    Set<String> keys = redisTemplate.keys(prefix.concat("*"));
    return keys;
}

批量获取value

/**
 * 获取所有的key
 */
public List<String> getListKey(String prefix) {
    Set<String> keys = redisTemplate.keys("*");
    List<String> values = redisTemplate.opsForValue().multiGet(keys);
    return values;
}

 

标签:Set,前缀,keys,Redis,获取,key,redisTemplate,String
来源: https://www.cnblogs.com/lizm166/p/16542095.html