redis工具类批量删除key
时间: 2023-09-10 08:11:32 浏览: 166
Redis批量删除KEY的方法
以下是一个 Redis 工具类批量删除 key 的示例代码:
```java
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.util.Set;
public class RedisUtil {
private static JedisPool jedisPool;
static {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(100);
config.setMaxIdle(20);
config.setMaxWaitMillis(10000);
jedisPool = new JedisPool(config, "localhost", 6379);
}
/**
* 批量删除指定前缀的 key
* @param prefix key 前缀
*/
public static void deleteKeysWithPrefix(String prefix) {
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
Set<String> keys = jedis.keys(prefix + "*");
if (keys != null && !keys.isEmpty()) {
jedis.del(keys.toArray(new String[keys.size()]));
}
} finally {
if (jedis != null) {
jedis.close();
}
}
}
}
```
以上代码中,我们使用了 JedisPool 连接池来管理 Redis 连接,使用 keys 命令获取指定前缀的 key 列表,然后使用 del 命令批量删除这些 key。请注意,在使用完 Redis 连接后,我们需要使用 close 方法将连接归还给连接池。
阅读全文