欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Springboot中RedisTemplate设置String、Hash、List过期时间,

来源: javaer 分享于  点击 3127 次 点评:105

Springboot中RedisTemplate设置String、Hash、List过期时间,


目录
  • 前言
  • Redis中String设置时间的方法
  • Redis中Hash和List设置时间的方法
  • Redis中Hash的put、putAll、putIfAbsent区别

前言

时间类型: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过期时间内容请搜索3672js教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持3672js教程! 

您可能感兴趣的文章:
  • RedisTemplate常用操作方法总结(set、hash、list、string等)
  • 解读RedisTemplate的各种操作(set、hash、list、string)
相关栏目:

用户点评