java编程代码 redisTemplate过期时间问题

计算机编程后台java代码
redisTemplate.opsForHash().put(vid, photoType)上传图片
属性分别为 vid,照片类型,路径
第一个为 A(vid) 自拍照 (key) xxx (values)
第二个为 A(vid) 全身照 (key) xxx(values)
但是根据 redisTemplate.expire(vid, time, TimeUnit.SECONDS);
他是按照vid进行设置过期时间
这样会出现一个问题即使 假如我第一个图片过期时间为5分钟
过了4分钟后
我又重新添加了一个图片,设置了过期时间5分钟
因为他们共享同一个vid, 也就是同一个内存cache区域
这样的话
但是根据 redisTemplate.expire(vid, time, TimeUnit.SECONDS);
岂不是刷新了快要过期的第一张图片过期时间
有什么解决的办法吗?
我可以附加100元支付宝现金奖励, 决不食言
最新回答
天生萌货

2024-12-03 00:07:00

我以前项目中的做法是在保存的对象上,增加一个过期时间属性,get之后,判断系统时间是否超过过期时间,超过的话就删掉这个key,或者是从DB重新加载。
追问
如果从api的角度来看 没办法去解决吗 ?  只能从第三方原因去解决?
追答
是说redis的API?没办法,redis不支持