java设置redis值只在当天生效
·
摘要:本文介绍了在Redis中设置当天失效时间的方法。通过Java代码示例展示了如何计算当天剩余秒数,并使用RedisTemplate设置带过期时间的键值对。关键步骤包括:获取当前日期,计算当天23:59:59的时间戳,求出剩余秒数差,最后通过opsForValue().set()方法设置键值及过期时间。这种方法适用于需要数据仅在当天有效的业务场景,如临时缓存或每日限时数据。
在redis中设置失效时间,进当天生效
public static void main(String[] args) {
Date nowDate = new Date();
String date = DateFormatUtils.format(nowDate, "yyyyMMdd");
// 设置失效时间(仅当天生效)
Date laterDate = new SimpleDateFormat("yyyyMMddHHmmss").parse(date + "235959", new ParsePosition(0));
Long time = (laterDate.getTime() - nowDate.getTime()) / (1000);
// redis工具类:redisTemplate + redis的key:redisKey + redis的值:redisValue + 过期时间:time + 时间单位:TimeUnit.SECONDS
redisTemplate.opsForValue().set(redisKey, redisValue, time, TimeUnit.SECONDS);
}
更多推荐
所有评论(0)