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;
}

 

原创文章,作者:254126420,如若转载,请注明出处:https://blog.ytso.com/278377.html

(0)
上一篇 2022年8月2日
下一篇 2022年8月2日

相关推荐

发表回复

登录后才能评论