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

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

public void getRedis(String cardId) {
        // 获取所有的key
        Set 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 getListKey(String prefix) {
    Set keys = redisTemplate.keys(prefix.concat("*"));
    return keys;
}

批量获取value

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

Original: https://www.cnblogs.com/lizm166/p/16542095.html
Author: 整合侠
Title: Redis 通过key前缀获取所有key的值

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/528894/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球