因需要清理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方法不行。