工具类:
package com.ljxx.service.common; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.*; import org.springframework.data.redis.serializer.StringRedisSerializer; import org.springframework.data.redis.support.atomic.RedisAtomicLong; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.io.Serializable; import java.util.Date; import java.util.List; import java.util.Set; import java.util.concurrent.TimeUnit; @Service public class RedisService { @Autowired private Redistemplate redistemplate; @Autowired private StringRedistemplate stringRedistemplate; @Value("${system.redisPre}") private String redisPre; /** * string类型 */ //删除key public void deleteKey(String key) { stringRedistemplate.delete(redisPre + key); } //判断key存在 public boolean keyIsExists(String key) { return stringRedistemplate.hasKey(redisPre + key); } //设置key失效时间,以秒为单位 public void setKeyTimeOut(String key, long second) { stringRedistemplate.expire(redisPre + key, second, TimeUnit.SECONDS); } //设置值 public void setValue(String key, String val) { stringRedistemplate.boundValueOps(redisPre + key).set(val); } //获取值 public String getValue(String key) { return stringRedistemplate.boundValueOps(redisPre + key).get(); } /** * object类型 */ //存入对象 public void setobject(String key, Object obj) { getRedistemplate().boundValueOps(redisPre + key).set(obj); } //获取对象 public Object getobject(String key) { return getRedistemplate().boundValueOps(redisPre + key).get(); } //删除对象 public void delObject(String key) { getRedistemplate().delete(redisPre + key); } //设置对象过期时间 public void setobjectTimeOut(String key, long second) { getRedistemplate().expire(redisPre + key, second, TimeUnit.SECONDS); } //判断对象是否存在 public boolean objectIsExists(String key) { return getRedistemplate().hasKey(redisPre + key); } //获取Redistemplate,把key进行string序列化,那么在库中就显示的原始的key值,否则就是16进制的值不方便。 private Redistemplate getRedistemplate() { //设置key是string类型的序列 redistemplate.setKeySerializer(new StringRedisSerializer()); //设置hashKey是string类型的序列 redistemplate.setHashKeySerializer(new StringRedisSerializer()); return redistemplate; } }
使用工具类:注入
@Autowired private RedisService redisUtil;
if (!redisUtil.objectIsExists(token)) { return Result.error("token已经失效!"); }
User user = (User) redisUtil.getobject(token);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。