package com.cgr.lesson.service;
import com.cgr.lesson.exception.BusinessException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.concurrent.TimeUnit;
/**
* @ Author :cgr
* @ Date :Created in 12:11 2020-04-30
* @ Description:redisTemplate 工具类
* @ Modified By:
*/
@Service
public class RedisService {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
/** -------------------key相关操作--------------------- */
/**
* 是否存在key
*
* @param key
* @return java.lang.Boolean
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Boolean hasKey(String key) {
if (null == key) {
return false;
}
return redisTemplate.hasKey(key);
}
/**
* 删除key
*
* @param key
* @return Boolean 成功返回true 失败返回false
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Boolean delete(String key) {
if (null == key) {
return false;
}
return redisTemplate.delete(key);
}
/**
* 批量删除key
*
* @param keys
* @return Long 返回成功删除key的数量
* @throws
* @Author:
* @CreateDate: 2019/8/27 20:27
* @UpdateUser:
* @UpdateDate: 2019/8/27 20:27
* @Version: 0.0.1
*/
public Long delete(Collection<String> keys) {
return redisTemplate.delete(keys);
}
/**
* 设置过期时间
*
* @param key
* @param timeout
* @param unit
* @return java.lang.Boolean
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Boolean expire(String key, long timeout, TimeUnit unit) {
if (null == key || null == unit) {
return false;
}
return redisTemplate.expire(key, timeout, unit);
}
/**
* 查找匹配的key
*
* @param pattern
* @return java.util.Set<java.lang.String>
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Set<String> keys(String pattern) {
if (null == pattern) {
return null;
}
return redisTemplate.keys(pattern);
}
/**
* 移除 key 的过期时间,key 将持久保持
*
* @param key
* @return java.lang.Boolean
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Boolean persist(String key) {
if (null == key) {
return false;
}
return redisTemplate.persist(key);
}
/**
* 返回 key 的剩余的过期时间
*
* @param key
* @param unit
* @return java.lang.Long 当 key 不存在时,返回 -2 。当 key 存在但没有设置剩余生存时间时,返回 -1 。否则,以秒为单位,返回 key的剩余生存时间
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Long getExpire(String key, TimeUnit unit) {
if (null == key || null == unit) {
throw new BusinessException(4001004, "key or TomeUnit 不能为空");
}
return redisTemplate.getExpire(key, unit);
}
//*************String相关数据类型***************************
/**
* 设置指定 key 的值
*
* @param key
* @param value
* @return void
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public void set(String key, Object value) {
if (null == key || null == value) {
return;
}
redisTemplate.opsForValue().set(key, value);
}
/**
* 设置key 的值 并设置过期时间
*
* @param key
* @param value
* @param time
* @param unit
* @return void
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public void set(String key, Object value, long time, TimeUnit unit) {
if (null == key || null == value || null == unit) {
return;
}
redisTemplate.opsForValue().set(key, value, time, unit);
}
/**
* 设置key 的值 并设置过期时间
* key存在 不做操作返回false
* key不存在设置值返回true
*
* @param key
* @param value
* @param time
* @param unit
* @return java.lang.Boolean
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Boolean setifAbsen(String key, Object value, long time, TimeUnit unit) {
if (null == key || null == value || null == unit) {
throw new BusinessException(4001004, "kkey、value、unit都不能为空");
}
return redisTemplate.opsForValue().setIfAbsent(key, value, time, unit);
}
/**
* 获取指定Key的Value。如果与该Key关联的Value不是string类型,Redis将抛出异常,
* 因为GET命令只能用于获取string Value,如果该Key不存在,返回null
*
* @param key
* @return java.lang.Object
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Object get(String key) {
if (null == key) {
return null;
}
return redisTemplate.opsForValue().get(key);
}
/**
* 很明显先get再set就说先获取key值对应的value然后再set 新的value 值。
*
* @param key
* @param value
* @return java.lang.Object
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Object getSet(String key, Object value) {
if (null == key) {
return null;
}
return redisTemplate.opsForValue().getAndSet(key, value);
}
/**
* 通过批量的key获取批量的value
*
* @param keys
* @return java.util.List<java.lang.Object>
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public List<Object> mget(Collection<String> keys) {
if (null == keys) {
return Collections.emptyList();
}
return redisTemplate.opsForValue().multiGet(keys);
}
/**
* 将指定Key的Value原子性的增加increment。如果该Key不存在,其初始值为0,在incrby之后其值为increment。
* 如果Value的值不能转换为整型值,如Hi,该操作将执行失败并抛出相应异常。操作成功则返回增加后的value值。
*
* @param key
* @param increment
* @return long
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public long incrby(String key, long increment) {
if (null == key) {
throw new BusinessException(4001004, "key不能为空");
}
return redisTemplate.opsForValue().increment(key, increment);
}
/**
* 将指定Key的Value原子性的减少decrement。如果该Key不存在,其初始值为0,
* 在decrby之后其值为-decrement。如果Value的值不能转换为整型值,
* 如Hi,该操作将执行失败并抛出相应的异常。操作成功则返回减少后的value值。
*
* @param key
* @param decrement
* @return java.lang.Long
* @throws
* @Author:
* @UpdateUser:
* @Version: 0.0.1
*/
public Long decrby(String key, long decrement) {
if (null == key) {
throw new BusinessException(4001004, "key不能为空");
}
return redisTemplate.opsForValue().decrement(key, decrement);
}
/**
* 如果该Key已经存在,APPEND命令将参数Value的数据追加到已存在Value的末尾。如果该Key不存在,
* APPEND命令将会创建一个新的Key/Value。返回追加后Value的字符串长度。
*
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于Java开发的智能养老院管理系统源码(期末课程大作业).zip 基于Java开发的智能养老院管理系统源码(期末课程大作业).zip 基于Java开发的智能养老院管理系统源码(期末课程大作业).zip 基于Java开发的智能养老院管理系统源码(期末课程大作业).zip基于Java开发的智能养老院管理系统源码(期末课程大作业).zip基于Java开发的智能养老院管理系统源码(期末课程大作业).zip 【备注】 主要针对计算机相关专业的正在做毕设的学生和需要项目实战的Java、JavaScript、小程序开发学习者。 也可作为课程设计、期末大作业。包含:项目源码、项目说明等,该项目可以直接作为毕设、课程设计使用。 也可以用来学习参考借鉴!
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/GZ.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
共 257 条
- 1
- 2
- 3
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/9fb63100393143b2bf2ab5435959ddba_deeplearning_.jpg!1)
mDeepLearning4205
- 粉丝: 8240
- 资源: 3690
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)