删除代码:
Set keys = redisTemplate.keys("*");
redisTemplate.delete(keys);
如果删除无效,大概率是redistemplate默认的k使用的是jdk序列化,导致无法正确识别“*”引起的,
解决办法:K改为String序列化
例如,在项目启动类下面加这个
@Bean
public RedisTemplate redisTemplate(@Autowired RedisTemplate redisTemplate){
redisTemplate.setKeySerializer(redisTemplate.getStringSerializer());
//@bean方式将K设为String序列化后,V会自动转为String序列化。
// 为了保持Object类型的V值,故我这边需将V设回默认的jdk的V,
redisTemplate.setValueSerializer(redisTemplate.getDefaultSerializer());
return redisTemplate;
}
更多推荐