Springboot中RedisTemplate设置String、Hash、List过期时间
作者:逆流°只是风景-bjhxcc
本文主要介绍了Springboot中RedisTemplate设置String、Hash、List过期时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
前言
时间类型:TimeUnit
import java.util.concurrent.TimeUnit; TimeUnit.SECONDS:秒 TimeUnit.MINUTES:分 TimeUnit.HOURS:时 TimeUnit.DAYS:日 TimeUnit.MILLISECONDS:毫秒 TimeUnit.MILLISECONDS:微秒 TimeUnit.NANOSECONDS:纳秒
Redis中String设置时间的方法
redisTemplate.opsForValue().set("loginCode","254588",2, TimeUnit.SECONDS);//过期时间2秒 redisTemplate.opsForValue().set("loginCode","254588",2, TimeUnit.MINUTES);//过期时间2分钟 redisTemplate.opsForValue().set("loginCode","254588",2, TimeUnit.HOURS);//过期时间2小时 redisTemplate.opsForValue().set("loginCode","254588",2, TimeUnit.DAYS);//过期时间2天
Redis中Hash和List设置时间的方法
Java对于Redis的封装不是能满足所有的业务需求的,但是我们可以通过lua脚本来直接向Redis发送命令从而保证原子性;
下面这两句话,可以实现向Redis插入Hash数据,并且设置整个Hash的过期时间。
putIfAbsent 指的是如果传入key对应的value已经存在,就返回存在的value,不进行替换。如果不存在,就添加key和value,返回null。意思就是如果没有才插入。
boolean a = redisTemplate.opsForHash().putIfAbsent(name, k, v); boolean b = redisTemplate.expire(name, keepTime, TimeUnit.SECONDS);
Redis中Hash的put、putAll、putIfAbsent区别
put
向Redis添加单个key、hashKey、hashValue
putAll
添加整个hash
putIfAbsent
如果传入key对应的value已经存在,就返回存在的value,不进行替换。如果不存在,就添加key和value,返回null。
到此这篇关于Springboot中RedisTemplate设置String、Hash、List过期时间的文章就介绍到这了,更多相关RedisTemplate设置String、Hash、List过期时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!