diff --git a/src/main/java/com/thinkgem/jeesite/common/utils/JedisUtils.java b/src/main/java/com/thinkgem/jeesite/common/utils/JedisUtils.java index a868a27cfc26424680f5c84d51d1670ea0907361..44e56d37d2153d38bc58aa074dc7ea820a951ab4 100644 --- a/src/main/java/com/thinkgem/jeesite/common/utils/JedisUtils.java +++ b/src/main/java/com/thinkgem/jeesite/common/utils/JedisUtils.java @@ -28,11 +28,11 @@ import redis.clients.jedis.exceptions.JedisException; public class JedisUtils { private static Logger logger = LoggerFactory.getLogger(JedisUtils.class); - + private static JedisPool jedisPool = SpringContextHolder.getBean(JedisPool.class); public static final String KEY_PREFIX = Global.getConfig("redis.keyPrefix"); - + /** * 获取缓存 * @param key 键 @@ -55,7 +55,7 @@ public class JedisUtils { } return value; } - + /** * 获取缓存 * @param key 键 @@ -77,7 +77,7 @@ public class JedisUtils { } return value; } - + /** * 设置缓存 * @param key 键 @@ -102,7 +102,7 @@ public class JedisUtils { } return result; } - + /** * 设置缓存 * @param key 键 @@ -127,7 +127,7 @@ public class JedisUtils { } return result; } - + /** * 获取List缓存 * @param key 键 @@ -149,7 +149,7 @@ public class JedisUtils { } return value; } - + /** * 获取List缓存 * @param key 键 @@ -175,7 +175,7 @@ public class JedisUtils { } return value; } - + /** * 设置List缓存 * @param key 键 @@ -191,7 +191,8 @@ public class JedisUtils { if (jedis.exists(key)) { jedis.del(key); } - result = jedis.rpush(key, (String[])value.toArray()); + String[] strArrItem = new String[value.size()]; + result = jedis.rpush(key, value.toArray(strArrItem)); if (cacheSeconds != 0) { jedis.expire(key, cacheSeconds); } @@ -203,7 +204,7 @@ public class JedisUtils { } return result; } - + /** * 设置List缓存 * @param key 键 @@ -223,7 +224,11 @@ public class JedisUtils { for (Object o : value){ list.add(toBytes(o)); } - result = jedis.rpush(getBytesKey(key), (byte[][])list.toArray()); + + byte[] []arr = new byte[list.size()][]; + list.toArray(arr); + result = jedis.rpush(getBytesKey(key),arr); + // result = jedis.rpush(getBytesKey(key), (byte[][])list.toArray()); 此处有类型转换异常 if (cacheSeconds != 0) { jedis.expire(key, cacheSeconds); } @@ -235,7 +240,7 @@ public class JedisUtils { } return result; } - + /** * 向List缓存中添加值 * @param key 键 @@ -256,14 +261,14 @@ public class JedisUtils { } return result; } - + /** * 向List缓存中添加值 * @param key 键 * @param value 值 * @return */ - public static long listObjectAdd(String key, Object... value) { + public static long listObjectAdd(String key, List value) { long result = 0; Jedis jedis = null; try { @@ -272,7 +277,10 @@ public class JedisUtils { for (Object o : value){ list.add(toBytes(o)); } - result = jedis.rpush(getBytesKey(key), (byte[][])list.toArray()); + byte[] []arr = new byte[list.size()][]; + list.toArray(arr); + result = jedis.rpush(getBytesKey(key),arr); + //result = jedis.rpush(getBytesKey(key), (byte[][])list.toArray()); 此处有类型转换异常 logger.debug("listObjectAdd {} = {}", key, value); } catch (Exception e) { logger.warn("listObjectAdd {} = {}", key, value, e); @@ -303,7 +311,7 @@ public class JedisUtils { } return value; } - + /** * 获取缓存 * @param key 键 @@ -329,7 +337,7 @@ public class JedisUtils { } return value; } - + /** * 设置Set缓存 * @param key 键 @@ -345,7 +353,9 @@ public class JedisUtils { if (jedis.exists(key)) { jedis.del(key); } - result = jedis.sadd(key, (String[])value.toArray()); + String[] strArrItem = new String[value.size()]; + result = jedis.sadd(key, value.toArray(strArrItem)); + //result = jedis.sadd(key, (String[])value.toArray()); if (cacheSeconds != 0) { jedis.expire(key, cacheSeconds); } @@ -357,7 +367,7 @@ public class JedisUtils { } return result; } - + /** * 设置Set缓存 * @param key 键 @@ -377,7 +387,10 @@ public class JedisUtils { for (Object o : value){ set.add(toBytes(o)); } - result = jedis.sadd(getBytesKey(key), (byte[][])set.toArray()); + byte[] []arr = new byte[set.size()][]; + set.toArray(arr); + result = jedis.sadd(getBytesKey(key),arr); + // result = jedis.sadd(getBytesKey(key), (byte[][])set.toArray()); if (cacheSeconds != 0) { jedis.expire(key, cacheSeconds); } @@ -389,7 +402,7 @@ public class JedisUtils { } return result; } - + /** * 向Set缓存中添加值 * @param key 键 @@ -417,7 +430,7 @@ public class JedisUtils { * @param value 值 * @return */ - public static long setSetObjectAdd(String key, Object... value) { + public static long setSetObjectAdd(String key,Set value) { long result = 0; Jedis jedis = null; try { @@ -426,7 +439,11 @@ public class JedisUtils { for (Object o : value){ set.add(toBytes(o)); } - result = jedis.rpush(getBytesKey(key), (byte[][])set.toArray()); + byte[] []arr = new byte[set.size()][]; + set.toArray(arr); + //byte[][] bytes = list.toArray(arr); + result = jedis.sadd(getBytesKey(key),arr); + //result = jedis.rpush(getBytesKey(key), (byte[][])set.toArray()); logger.debug("setSetObjectAdd {} = {}", key, value); } catch (Exception e) { logger.warn("setSetObjectAdd {} = {}", key, value, e); @@ -435,7 +452,7 @@ public class JedisUtils { } return result; } - + /** * 获取Map缓存 * @param key 键 @@ -457,7 +474,7 @@ public class JedisUtils { } return value; } - + /** * 获取Map缓存 * @param key 键 @@ -483,7 +500,7 @@ public class JedisUtils { } return value; } - + /** * 设置Map缓存 * @param key 键 @@ -511,7 +528,7 @@ public class JedisUtils { } return result; } - + /** * 设置Map缓存 * @param key 键 @@ -543,7 +560,7 @@ public class JedisUtils { } return result; } - + /** * 向Map缓存中添加值 * @param key 键 @@ -564,7 +581,7 @@ public class JedisUtils { } return result; } - + /** * 向Map缓存中添加值 * @param key 键 @@ -589,7 +606,7 @@ public class JedisUtils { } return result; } - + /** * 移除Map缓存中的值 * @param key 键 @@ -610,7 +627,7 @@ public class JedisUtils { } return result; } - + /** * 移除Map缓存中的值 * @param key 键 @@ -631,7 +648,7 @@ public class JedisUtils { } return result; } - + /** * 判断Map缓存中的Key是否存在 * @param key 键 @@ -652,7 +669,7 @@ public class JedisUtils { } return result; } - + /** * 判断Map缓存中的Key是否存在 * @param key 键 @@ -673,7 +690,7 @@ public class JedisUtils { } return result; } - + /** * 删除缓存 * @param key 键 @@ -721,7 +738,7 @@ public class JedisUtils { } return result; } - + /** * 缓存是否存在 * @param key 键 @@ -741,7 +758,7 @@ public class JedisUtils { } return result; } - + /** * 缓存是否存在 * @param key 键 @@ -790,7 +807,7 @@ public class JedisUtils { jedisPool.returnBrokenResource(jedis); } } - + /** * 释放资源 * @param jedis @@ -814,7 +831,7 @@ public class JedisUtils { return ObjectUtils.serialize(object); } } - + /** * 获取byte[]类型Key * @param key @@ -832,7 +849,7 @@ public class JedisUtils { } return null; } - + /** * Object转换byte[]类型 * @param key