因需要清理redis缓存,然后我们存的key是动态的,比如 redisKey+aId+bId,value 这种,所以需要用到模糊查询出来再清除。
网上一顿操作,就你了:
结果发现数据查询不出来,即使刚插入的数据也显示不了,只能查固定数据,模糊的查不到!接下来改了几个版本如:
依然没有数据,看网上似乎都没遇到这种问题啊。
最后换了另一种写法解决:
Cursor<Map.Entry<Object,Object>> cursor = (Cursor<Map.Entry<Object,Object>>)redisTemplate.execute((RedisCallback<Cursor<byte[]>>) connection ->
connection.scan(ScanOptions.scanOptions().match(key + "*").count(5000).build()));
虽然解决了问题,依然不明白为什么redisTemplate自带的scan方法不行。