//package com.ruoyi.doublePrevention.config.redis;
|
//
|
//
|
//import org.slf4j.Logger;
|
//import org.slf4j.LoggerFactory;
|
//import org.springframework.data.redis.connection.RedisClusterConnection;
|
//import org.springframework.data.redis.connection.RedisClusterNode;
|
//import org.springframework.data.redis.connection.RedisConnection;
|
//import org.springframework.data.redis.connection.RedisConnectionFactory;
|
//import org.springframework.data.redis.connection.jedis.JedisClusterConnection;
|
//import org.springframework.data.redis.connection.jedis.JedisConnection;
|
//import org.springframework.data.redis.core.*;
|
//import org.springframework.stereotype.Repository;
|
//
|
//import javax.annotation.PostConstruct;
|
//import javax.annotation.Resource;
|
//import java.io.Serializable;
|
//import java.util.HashSet;
|
//import java.util.Iterator;
|
//import java.util.List;
|
//import java.util.Set;
|
//import java.util.concurrent.TimeUnit;
|
//
|
///**
|
//* @Description: redis工具类
|
//*/
|
//
|
//@Repository("configRedisRepository")
|
//@SuppressWarnings(value = { "unchecked", "rawtypes" })
|
//public class RedisUtils {
|
//
|
//
|
// @Resource
|
// private RedisTemplate redisTemplate;
|
// /**
|
// * logger
|
// */
|
// private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
//
|
//
|
// @PostConstruct
|
// public void initRepository(){
|
// try {
|
// this.set("test:module:Web", "testConnection", 60L, TimeUnit.SECONDS);
|
// logger.info("[ModuleRedis][Web] is connected");
|
// } catch (Exception e) {
|
// logger.error("[ModuleRedis][Web] connected failed!!");
|
// }
|
// }
|
//
|
// /**
|
// * 写入缓存
|
// * @param key
|
// * @param value
|
// * @return
|
// */
|
// public boolean set(final String key, Object value) {
|
// boolean result = false;
|
// try {
|
// ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue();
|
// operations.set(key, value);
|
// result = true;
|
// } catch (Exception e) {
|
// e.printStackTrace();
|
// }
|
// return result;
|
// }
|
// /**
|
// * 写入缓存设置时效时间
|
// * @param key
|
// * @param value
|
// * @return
|
// */
|
// public boolean set(final String key, Object value, Long expireTime ,TimeUnit timeUnit) {
|
// boolean result = false;
|
// try {
|
// ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue();
|
// operations.set(key, value);
|
// redisTemplate.expire(key, expireTime, timeUnit);
|
// result = true;
|
// } catch (Exception e) {
|
// e.printStackTrace();
|
// }
|
// return result;
|
// }
|
// /**
|
// * 批量删除对应的value
|
// * @param keys
|
// */
|
// public void remove(final String... keys) {
|
// for (String key : keys) {
|
// remove(key);
|
// }
|
// }
|
// /**
|
// * 批量删除key
|
// * @param pattern
|
// */
|
// public void removePattern(final String pattern) {
|
// Set<Serializable> keys = redisTemplate.keys(pattern);
|
// if (keys.size() > 0){
|
// redisTemplate.delete(keys);
|
// }
|
// }
|
// /**
|
// * 删除对应的value
|
// * @param key
|
// */
|
// public void remove(final String key) {
|
// if (exists(key)) {
|
// redisTemplate.delete(key);
|
// }
|
// }
|
// /**
|
// * 判断缓存中是否有对应的value
|
// * @param key
|
// * @return
|
// */
|
// public boolean exists(final String key) {
|
// return redisTemplate.hasKey(key);
|
// }
|
// /**
|
// * 读取缓存
|
// * @param key
|
// * @return
|
// */
|
// public Object get(final String key) {
|
// Object result = null;
|
// ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue();
|
// result = operations.get(key);
|
// return result;
|
// }
|
// /**
|
// * 哈希 添加
|
// * @param key
|
// * @param hashKey
|
// * @param value
|
// */
|
// public void hmSet(String key, Object hashKey, Object value){
|
// HashOperations<String, Object, Object> hash = redisTemplate.opsForHash();
|
// hash.put(key,hashKey,value);
|
// }
|
// /**
|
// * 哈希获取数据
|
// * @param key
|
// * @param hashKey
|
// * @return
|
// */
|
// public Object hmGet(String key, Object hashKey){
|
// HashOperations<String, Object, Object> hash = redisTemplate.opsForHash();
|
// return hash.get(key,hashKey);
|
// }
|
// /**
|
// * 列表添加
|
// * @param k
|
// * @param v
|
// */
|
// public void lPush(String k,Object v){
|
// ListOperations<String, Object> list = redisTemplate.opsForList();
|
// list.rightPush(k,v);
|
// }
|
// /**
|
// * 列表获取
|
// * @param k
|
// * @param l
|
// * @param l1
|
// * @return
|
// */
|
// public List<Object> lRange(String k, long l, long l1){
|
// ListOperations<String, Object> list = redisTemplate.opsForList();
|
// return list.range(k,l,l1);
|
// }
|
// /**
|
// * 集合添加
|
// * @param key
|
// * @param value
|
// */
|
// public void add(String key,Object value){
|
// SetOperations<String, Object> set = redisTemplate.opsForSet();
|
// set.add(key,value);
|
// }
|
// /**
|
// * 集合获取
|
// * @param key
|
// * @return
|
// */
|
// public Set<Object> setMembers(String key){
|
// SetOperations<String, Object> set = redisTemplate.opsForSet();
|
// return set.members(key);
|
// }
|
// /**
|
// * 有序集合添加
|
// * @param key
|
// * @param value
|
// * @param scoure
|
// */
|
// public void zAdd(String key,Object value,double scoure){
|
// ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();
|
// zset.add(key,value,scoure);
|
// }
|
// /**
|
// * 有序集合获取
|
// * @param key
|
// * @param scoure
|
// * @param scoure1
|
// * @return
|
// */
|
// public Set<Object> rangeByScore(String key,double scoure,double scoure1){
|
// ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();
|
// return zset.rangeByScore(key, scoure, scoure1);
|
// }
|
//
|
// /**
|
// * @Description: 获取过期时间 返回 秒
|
// */
|
//
|
// public Long getExpireTime(String key) {
|
// return redisTemplate.getExpire(key, TimeUnit.SECONDS);
|
// }
|
//
|
//
|
// /**
|
// * @Description: 重置key 的 过期时间
|
// */
|
// public void resetKeyExpireTime(String key, Long seconds) {
|
// redisTemplate.expire(key, seconds, TimeUnit.SECONDS);
|
// }
|
//
|
// public Set<String> scanMatch(String matchKey) {
|
// Set<String> keys = new HashSet();
|
// RedisConnectionFactory connectionFactory = redisTemplate.getConnectionFactory();
|
// RedisConnection redisConnection = connectionFactory.getConnection();
|
// Cursor<byte[]> scan = null;
|
// if(redisConnection instanceof JedisClusterConnection){
|
// RedisClusterConnection clusterConnection = connectionFactory.getClusterConnection();
|
// Iterable<RedisClusterNode> redisClusterNodes = clusterConnection.clusterGetNodes();
|
// Iterator<RedisClusterNode> iterator = redisClusterNodes.iterator();
|
// while (iterator.hasNext()) {
|
// RedisClusterNode next = iterator.next();
|
// scan = clusterConnection.scan(next, ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build());
|
// while (scan.hasNext()) {
|
// keys.add(new String(scan.next()));
|
// }
|
// scan.close();
|
// }
|
// return keys;
|
// }
|
// if(redisConnection instanceof JedisConnection){
|
// scan = redisConnection.scan(ScanOptions.scanOptions().match(matchKey).count(Integer.MAX_VALUE).build());
|
// while (scan.hasNext()){
|
// //找到一次就添加一次
|
// keys.add(new String(scan.next()));
|
// }
|
// scan.close();
|
// return keys;
|
// }
|
//
|
// return keys;
|
//}
|
//
|
//}
|