本文主要是介绍RedisTemplate中opaForValue.set的注意之处,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题
原本写了一个小项目,想通过redis缓存实现登录退出功能,结果出现了莫名奇妙的问题
代码如下:
报错:
经过多次调试之后我发现是opsForValue.set(key,value,expireTime)这行代码的问题,没有指定过期时间的单位,我把这个第三个参数当成了过期时间(实际上如果只有三个参数,第三个参数是offset,并不是过期时间),于是我换成了opsForValue.set(key,value,expireTime,TimeUnit.MILLISECONDS)就不在报错
总结:
RedisTemplate.opsForValue.set函数:
三个参数时(不可以设置过期时间):
void set(K key, V value, long offset)
四个参数时(第三个参数是超时时间,第四个参数的单位):
void set(K key, V value, long timeout, TimeUnit unit)
这篇关于RedisTemplate中opaForValue.set的注意之处的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!