From f788607ff771a47bc60d6a86e00b3433c40f3d2c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 24 九月 2021 15:22:03 +0800 Subject: [PATCH] 接入视频直播 --- src/main/java/com/yeshi/buwan/util/RedisManager.java | 376 ++++++++++++++++++++++++++++++++--------------------- 1 files changed, 226 insertions(+), 150 deletions(-) diff --git a/src/main/java/com/yeshi/buwan/util/RedisManager.java b/src/main/java/com/yeshi/buwan/util/RedisManager.java index 8807119..6266a64 100644 --- a/src/main/java/com/yeshi/buwan/util/RedisManager.java +++ b/src/main/java/com/yeshi/buwan/util/RedisManager.java @@ -9,6 +9,7 @@ import com.google.gson.Gson; import com.yeshi.buwan.vo.video.VideoListResultVO; +import org.yeshi.utils.SerializeUtil; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.params.SetParams; @@ -17,173 +18,248 @@ @Component public class RedisManager { - @Resource - private JedisPool jedisPool; + @Resource + private JedisPool jedisPool; - public Jedis getJedis() { - Jedis jedis = jedisPool.getResource(); - return jedis; - } + public Jedis getJedis() { + Jedis jedis = jedisPool.getResource(); + return jedis; + } - /** - * 缂撳瓨瀛楃涓� - * - * @param key - * @param value - */ - private void setString(String key, String value) { - Jedis jedis = getJedis(); - SetParams params = new SetParams().nx().ex(60); - jedis.set(key, value, params); - try { - jedis.set(key, value); - } finally { - jedis.close(); - } + /** + * 缂撳瓨瀛楃涓� + * + * @param key + * @param value + */ + private void setString(String key, String value) { + Jedis jedis = getJedis(); + SetParams params = new SetParams().nx().ex(60); + jedis.set(key, value, params); + try { + jedis.set(key, value); + } finally { + jedis.close(); + } - } + } - /** - * 鍒犻櫎鏌愪釜閿�� - * - * @param key - * @param value - */ - private void removeKey(String key) { - Jedis jedis = getJedis(); - try { - jedis.del(key); - } finally { - jedis.close(); - } + /** + * 鍒犻櫎鏌愪釜閿�� + * + * @param key + * @param value + */ + private void removeKey(String key) { + Jedis jedis = getJedis(); + try { + jedis.del(key); + } finally { + jedis.close(); + } - } + } - /** - * 缂撳瓨瀛楃涓� - * - * @param key - * @param value - * @param seconds - * -缂撳瓨鏃堕棿锛坰锛� - */ - private void setString(String key, String value, int seconds) { - Jedis jedis = getJedis(); - try { - jedis.setex(key, seconds, value); - } finally { - jedis.close(); - } - } + /** + * 缂撳瓨瀛楃涓� + * + * @param key + * @param value + * @param seconds -缂撳瓨鏃堕棿锛坰锛� + */ + private void setString(String key, String value, int seconds) { + Jedis jedis = getJedis(); + try { + jedis.setex(key, seconds, value); + } finally { + jedis.close(); + } + } - private String getString(String key) { - Jedis jedis = getJedis(); - try { - return jedis.get(key); - } finally { - jedis.close(); - } - } + private String getString(String key) { + Jedis jedis = getJedis(); + try { + return jedis.get(key); + } finally { + jedis.close(); + } + } - public void increase(String key) { - Jedis jedis = getJedis(); - try { - jedis.incr(key); - } finally { - jedis.close(); - } - } + public void increase(String key) { + Jedis jedis = getJedis(); + try { + jedis.incr(key); + } finally { + jedis.close(); + } + } - public void expire(String key, int seconds) { - Jedis jedis = getJedis(); - try { - jedis.expire(key, seconds); - } finally { - jedis.close(); - } - } - public void cacheCommonString(String key, String value, int seconds) { - setString(key, value, seconds); - } + public void increase(String key, int s) { + Jedis jedis = getJedis(); + try { + jedis.incr(key); + jedis.expire(key, s); + } finally { + jedis.close(); + } + } - public void cacheCommonString(String key, String value) { - setString(key, value); - } + public void expire(String key, int seconds) { + Jedis jedis = getJedis(); + try { + jedis.expire(key, seconds); + } finally { + jedis.close(); + } + } - public String getCommonString(String key) { - return getString(key); - } + public void cacheCommonString(String key, String value, int seconds) { + setString(key, value, seconds); + } - public void removeCommonString(String key) { - removeKey(key); - } + public void cacheCommonString(String key, String value) { + setString(key, value); + } - /** - * 淇濆瓨瑙嗛鏁版嵁 - * - * @param key - * @param videoData - */ - public void saveVideoList(String key, VideoListResultVO videoData) { - Gson gson = new Gson(); - cacheCommonString(key, gson.toJson(videoData), 60 * 60 * 24); - } + public String getCommonString(String key) { + return getString(key); + } - /** - * 鑾峰彇瑙嗛鍒楄〃 - * - * @param key - * @return - */ - public VideoListResultVO getVideoList(String key) { - String st = getCommonString(key); - if (!StringUtil.isNullOrEmpty(st)) { - return new Gson().fromJson(st, VideoListResultVO.class); - } - return null; - } + public void removeCommonString(String key) { + removeKey(key); + } - /** - * 淇濆瓨鍒楄〃 - * - * @param clazzList - * @param key - * @param seconds - */ - public <T> T saveObjList(List<T> clazzList, String key, Integer seconds) { - if (clazzList == null) - return null; - String value = new Gson().toJson(clazzList); - if (seconds != null) - cacheCommonString(key, value, seconds); - else - cacheCommonString(key, value); - return null; - } + public void remove(String key) { + removeKey(key); + } - /** - * 鑾峰彇瀵硅薄 - * - * @param clazz - * @param key - * @return - */ - public Class<?> getObj(Class<?> clazz, String key) { - String value = getCommonString(key); - return (Class<?>) new Gson().fromJson(value, clazz); - } + /** + * 淇濆瓨瑙嗛鏁版嵁 + * + * @param key + * @param videoData + */ + public void saveVideoList(String key, VideoListResultVO videoData) { + Gson gson = new Gson(); + cacheCommonString(key, gson.toJson(videoData), 60 * 60 * 8); + } - /** - * 鑾峰彇鍒楄〃 - * - * @param clazz - * @param key - * @return - */ - public <T> List<T> getObjList(Class<T> clazz, String key) { - String value = getCommonString(key); - return JsonUtil.jsonToList(value, clazz); - } + /** + * 鑾峰彇瑙嗛鍒楄〃 + * + * @param key + * @return + */ + public VideoListResultVO getVideoList(String key) { + String st = getCommonString(key); + if (!StringUtil.isNullOrEmpty(st)) { + return new Gson().fromJson(st, VideoListResultVO.class); + } + return null; + } + + /** + * 淇濆瓨鍒楄〃 + * + * @param clazzList + * @param key + * @param seconds + */ + public <T> T saveObjList(List<T> clazzList, String key, Integer seconds) { + if (clazzList == null) + return null; + String value = new Gson().toJson(clazzList); + if (seconds != null) + cacheCommonString(key, value, seconds); + else + cacheCommonString(key, value); + return null; + } + + /** + * 鑾峰彇瀵硅薄 + * + * @param clazz + * @param key + * @return + */ + public Class<?> getObj(Class<?> clazz, String key) { + String value = getCommonString(key); + return (Class<?>) new Gson().fromJson(value, clazz); + } + + /** + * 鑾峰彇鍒楄〃 + * + * @param clazz + * @param key + * @return + */ + public <T> List<T> getObjList(Class<T> clazz, String key) { + String value = getCommonString(key); + return JsonUtil.jsonToList(value, clazz); + } + + public boolean isSmsFrequencyLimit(String phone, Integer type) { + if (type == null) { + type = 0; + } + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.SMSVCode, phone + "-" + type); + String value = getCommonString(key); + if (StringUtil.isNullOrEmpty(value)) + return false; + else + return true; + } + + + /** + * 浠巖edis缂撳瓨涓煡璇紝鍙嶅簭鍒楀寲 + * + * @param redisKey + * @return + */ + public Object getDataFromRedis(String redisKey) { + //鏌ヨ + Jedis jedis = jedisPool.getResource(); + try { + byte[] result = jedis.get(redisKey.getBytes()); + + //濡傛灉鏌ヨ娌℃湁涓虹┖ + if (null == result) { + return null; + } + + //鏌ヨ鍒颁簡锛屽弽搴忓垪鍖� + return SerializeUtil.unSerialize(result); + } finally { + jedis.close(); + } + } + + /** + * 灏嗘暟鎹簱涓煡璇㈠埌鐨勬暟鎹斁鍏edis + * + * @param redisKey + * @param obj + */ + public void setDataToRedis(String redisKey, Object obj, Integer seconds) { + + //搴忓垪鍖� + byte[] bytes = SerializeUtil.serialize(obj); + + SetParams params = null; + if (seconds != null) { + params = new SetParams().nx().ex(seconds); + } + //瀛樺叆redis + Jedis jedis = jedisPool.getResource(); + try { + jedis.set(redisKey.getBytes(), bytes, params); + } finally { + jedis.close(); + } + } } -- Gitblit v1.8.0