|
@@ -1,13 +1,15 @@
|
|
|
package com.zd.alg.iot.vmp.utils.redis;
|
|
package com.zd.alg.iot.vmp.utils.redis;
|
|
|
|
|
|
|
|
-import java.util.*;
|
|
|
|
|
-import java.util.concurrent.TimeUnit;
|
|
|
|
|
-
|
|
|
|
|
|
|
+import org.slf4j.Logger;
|
|
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.data.redis.core.*;
|
|
import org.springframework.data.redis.core.*;
|
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @Description:Redis工具类
|
|
* @Description:Redis工具类
|
|
|
* @author: dgs
|
|
* @author: dgs
|
|
@@ -17,6 +19,8 @@ import org.springframework.util.CollectionUtils;
|
|
|
@SuppressWarnings(value = {"rawtypes", "unchecked"})
|
|
@SuppressWarnings(value = {"rawtypes", "unchecked"})
|
|
|
public class RedisUtil {
|
|
public class RedisUtil {
|
|
|
|
|
|
|
|
|
|
+ private static Logger log = LoggerFactory.getLogger(RedisUtil.class);
|
|
|
|
|
+
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private RedisTemplate redisTemplate;
|
|
private RedisTemplate redisTemplate;
|
|
|
|
|
|
|
@@ -33,7 +37,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("缓存失效时间异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -56,7 +60,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.hasKey(key);
|
|
return redisTemplate.hasKey(key);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("判断 key 是否存在异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -78,7 +82,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("删除缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -105,7 +109,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForValue().set(key, value);
|
|
redisTemplate.opsForValue().set(key, value);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("普通缓存放入异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -126,7 +130,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("普通缓存放入并设置时间异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -189,7 +193,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForHash().putAll(key, map);
|
|
redisTemplate.opsForHash().putAll(key, map);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("HashSet异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -209,7 +213,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("HashSet 并设置时间异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -226,7 +230,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForHash().put(key, item, value);
|
|
redisTemplate.opsForHash().put(key, item, value);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("Hash表异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -247,7 +251,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("Hash表异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -304,7 +308,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForSet().members(key);
|
|
return redisTemplate.opsForSet().members(key);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("set值异常", e);
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -319,7 +323,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForSet().isMember(key, value);
|
|
return redisTemplate.opsForSet().isMember(key, value);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("set值异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -334,7 +338,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForSet().add(key, values);
|
|
return redisTemplate.opsForSet().add(key, values);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("set缓存异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -354,7 +358,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return count;
|
|
return count;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("set缓存异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -368,7 +372,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForSet().size(key);
|
|
return redisTemplate.opsForSet().size(key);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("set缓存长度异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -383,7 +387,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForSet().remove(key, values);
|
|
return redisTemplate.opsForSet().remove(key, values);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("移除set缓存异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -516,7 +520,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForList().range(key, start, end);
|
|
return redisTemplate.opsForList().range(key, start, end);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -530,7 +534,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForList().size(key);
|
|
return redisTemplate.opsForList().size(key);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -547,7 +551,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForList().index(key, index);
|
|
return redisTemplate.opsForList().index(key, index);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -563,7 +567,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForList().rightPush(key, value);
|
|
redisTemplate.opsForList().rightPush(key, value);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -583,7 +587,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -599,7 +603,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForList().rightPushAll(key, values);
|
|
redisTemplate.opsForList().rightPushAll(key, values);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -619,7 +623,7 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -636,7 +640,7 @@ public class RedisUtil {
|
|
|
redisTemplate.opsForList().set(key, index, value);
|
|
redisTemplate.opsForList().set(key, index, value);
|
|
|
return true;
|
|
return true;
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -654,7 +658,7 @@ public class RedisUtil {
|
|
|
try {
|
|
try {
|
|
|
return redisTemplate.opsForList().remove(key, count, value);
|
|
return redisTemplate.opsForList().remove(key, count, value);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("list缓存异常", e);
|
|
|
return 0;
|
|
return 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -669,35 +673,12 @@ public class RedisUtil {
|
|
|
Set<String> set = redisTemplate.keys(key);
|
|
Set<String> set = redisTemplate.keys(key);
|
|
|
return new ArrayList<>(set);
|
|
return new ArrayList<>(set);
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
|
|
|
|
+ log.error("模糊查询异常", e);
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
- /**
|
|
|
|
|
- * 模糊查询
|
|
|
|
|
- * @param query 查询参数
|
|
|
|
|
- * @return
|
|
|
|
|
- */
|
|
|
|
|
-// public List<Object> scan(String query) {
|
|
|
|
|
-// List<Object> result = new ArrayList<>();
|
|
|
|
|
-// try {
|
|
|
|
|
-// Cursor<Map.Entry<Object,Object>> cursor = redisTemplate.opsForHash().scan("field",
|
|
|
|
|
-// ScanOptions.scanOptions().match(query).count(1000).build());
|
|
|
|
|
-// while (cursor.hasNext()) {
|
|
|
|
|
-// Map.Entry<Object,Object> entry = cursor.next();
|
|
|
|
|
-// result.add(entry.getKey());
|
|
|
|
|
-// Object key = entry.getKey();
|
|
|
|
|
-// Object valueSet = entry.getValue();
|
|
|
|
|
-// }
|
|
|
|
|
-// //关闭cursor
|
|
|
|
|
-// cursor.close();
|
|
|
|
|
-// } catch (Exception e) {
|
|
|
|
|
-// e.printStackTrace();
|
|
|
|
|
-// }
|
|
|
|
|
-// return result;
|
|
|
|
|
-// }
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 模糊查询
|
|
* 模糊查询
|
|
@@ -713,18 +694,6 @@ public class RedisUtil {
|
|
|
}
|
|
}
|
|
|
return keysTmp;
|
|
return keysTmp;
|
|
|
});
|
|
});
|
|
|
-// Set<String> keys = (Set<String>) redisTemplate.execute(new RedisCallback<Set<String>>(){
|
|
|
|
|
-//
|
|
|
|
|
-// @Override
|
|
|
|
|
-// public Set<String> doInRedis(RedisConnection connection) throws DataAccessException {
|
|
|
|
|
-// Set<String> keysTmp = new HashSet<>();
|
|
|
|
|
-// Cursor<byte[]> cursor = connection.scan(new ScanOptions.ScanOptionsBuilder().match(query).count(1000).build());
|
|
|
|
|
-// while (cursor.hasNext()) {
|
|
|
|
|
-// keysTmp.add(new String(cursor.next()));
|
|
|
|
|
-// }
|
|
|
|
|
-// return keysTmp;
|
|
|
|
|
-// }
|
|
|
|
|
-// });
|
|
|
|
|
|
|
|
|
|
return new ArrayList<>(keys);
|
|
return new ArrayList<>(keys);
|
|
|
}
|
|
}
|