【发布时间】:2014-01-30 06:56:06
【问题描述】:
我正在尝试删除一个 redis 键,但由于某种原因,它没有被删除,也没有引发异常。这是我要删除的代码:
import com.example.service.CustomerService;
import com.example.model.Customer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import java.math.BigInteger;
import java.util.*;
@Service
public class RedisCustomerService implements CustomerService {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
private String uniqueIdKey = "customerId";
private BigInteger uniqueId() {
long uniqueId = this.redisTemplate.opsForValue().increment(uniqueIdKey, 1);
return BigInteger.valueOf(uniqueId);
}
private String lastNameKey(BigInteger id) {
return "customer:ln:" + id;
}
private String firstNameKey(BigInteger id) {
return "customer:fn:" + id;
}
@Override
public void deleteCustomer(BigInteger id) {
redisTemplate.opsForValue().getOperations().delete(String.valueOf(id));
}
}
【问题讨论】:
-
使用 redis-cli 中的 monitor 命令查看哪些命令发送到 Redis 服务器。 redis.io/commands/monitor
-
你的redis是主实例吗?如果您尝试删除从属实例上的密钥,您的行为将会发生。