Jedis 不删除键
Jedis does not delete keys
我刚刚在 Ubuntu 18.04.3 上安装了 redis 的最新版本。我试过直接用 redis-cli
写值。
127.0.0.1:6379> set myket somevalue
我现在正尝试从 Jedis 中删除所有值:
Jedis jedis = new Jedis("localhost", 6379);
Set<String> names=jedis.keys("NAME:*");
System.out.println("There are " + names.size() + " keys to delete");
Iterator<String> it = names.iterator();
while (it.hasNext()) {
String s = it.next();
jedis.del(s);
System.out.println(s + " has been deleted");
}
但是,它总是说现在有0个键。当我直接从 redis-cli
查询它时,它仍然存在。如何从 Jedis 中删除密钥?
您的密钥名称是 myket
,您的模式是 NAME:*
。模式 NAME:*
与 myket
不匹配。这就是您找到 0 个匹配键的原因。
我刚刚在 Ubuntu 18.04.3 上安装了 redis 的最新版本。我试过直接用 redis-cli
写值。
127.0.0.1:6379> set myket somevalue
我现在正尝试从 Jedis 中删除所有值:
Jedis jedis = new Jedis("localhost", 6379);
Set<String> names=jedis.keys("NAME:*");
System.out.println("There are " + names.size() + " keys to delete");
Iterator<String> it = names.iterator();
while (it.hasNext()) {
String s = it.next();
jedis.del(s);
System.out.println(s + " has been deleted");
}
但是,它总是说现在有0个键。当我直接从 redis-cli
查询它时,它仍然存在。如何从 Jedis 中删除密钥?
您的密钥名称是 myket
,您的模式是 NAME:*
。模式 NAME:*
与 myket
不匹配。这就是您找到 0 个匹配键的原因。