0
点赞
收藏
分享

微信扫一扫

解决springboot下RedisTemplate清空/删除缓存

荷一居茶生活 2022-03-11 阅读 27
java

删除代码:

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

相关推荐

0 条评论