From d66952b0f15f4c62dc3bd6b9eb0744c9c3636f71 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期一, 28 七月 2025 14:39:51 +0800 Subject: [PATCH] 修改banner和pom.xml --- se-common/src/main/java/com/terra/common/service/RedisService.java | 289 +++++++++++++++------------------------------------------ 1 files changed, 77 insertions(+), 212 deletions(-) diff --git a/se-common/src/main/java/com/terra/common/service/RedisService.java b/se-common/src/main/java/com/terra/common/service/RedisService.java index 7fb5714..e0f288c 100644 --- a/se-common/src/main/java/com/terra/common/service/RedisService.java +++ b/se-common/src/main/java/com/terra/common/service/RedisService.java @@ -1,265 +1,130 @@ package com.terra.common.service; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.redis.core.BoundSetOperations; -import org.springframework.data.redis.core.HashOperations; +import com.terra.common.entity.all.SettingData; import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.data.redis.core.ValueOperations; -import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; -import java.util.*; +import javax.annotation.Resource; +import java.util.List; +import java.util.Set; import java.util.concurrent.TimeUnit; /** - * spring redis 宸ュ叿绫� - * - * @author admin - **/ -@SuppressWarnings(value = { "unchecked", "rawtypes" }) -@Component -public class RedisService -{ - @Autowired - public RedisTemplate redisTemplate; + * Redis鏈嶅姟绫� + * @author WWW + */ +@Service +public class RedisService { + @Resource + private RedisTemplate<String, Object> redisTemplate; /** - * 缂撳瓨鍩烘湰鐨勫璞★紝Integer銆丼tring銆佸疄浣撶被绛� - * - * @param key 缂撳瓨鐨勯敭鍊� - * @param value 缂撳瓨鐨勫�� + * 鑾峰彇Redis妯℃澘 */ - public <T> void setCacheObject(final String key, final T value) - { + public RedisTemplate<String, Object> getRedisTemplate() { + return redisTemplate; + } + + /** + * 璁剧疆鍊煎埌redis涓� + * + * @param key 閿� + * @param value 鍊� + */ + public void put(String key, Object value) { redisTemplate.opsForValue().set(key, value); } /** - * 缂撳瓨鍩烘湰鐨勫璞★紝Integer銆丼tring銆佸疄浣撶被绛� + * 璁剧疆鍊煎埌redis涓�,骞惰缃繃鏈熸椂闂� * - * @param key 缂撳瓨鐨勯敭鍊� - * @param value 缂撳瓨鐨勫�� + * @param key 閿� + * @param value 鍊� * @param timeout 鏃堕棿 - * @param timeUnit 鏃堕棿棰楃矑搴� + * @param unit 鍗曚綅 */ - public <T> void setCacheObject(final String key, final T value, final Long timeout, final TimeUnit timeUnit) - { - redisTemplate.opsForValue().set(key, value, timeout, timeUnit); + public void put(String key, Object value, long timeout, TimeUnit unit) { + redisTemplate.opsForValue().set(key, value, timeout, unit); } /** - * 璁剧疆鏈夋晥鏃堕棿 - * - * @param key Redis閿� - * @param timeout 瓒呮椂鏃堕棿 - * @return true=璁剧疆鎴愬姛锛沠alse=璁剧疆澶辫触 - */ - public boolean expire(final String key, final long timeout) - { - return expire(key, timeout, TimeUnit.SECONDS); - } - - /** - * 璁剧疆鏈夋晥鏃堕棿 - * - * @param key Redis閿� - * @param timeout 瓒呮椂鏃堕棿 - * @param unit 鏃堕棿鍗曚綅 - * @return true=璁剧疆鎴愬姛锛沠alse=璁剧疆澶辫触 - */ - public boolean expire(final String key, final long timeout, final TimeUnit unit) - { - return redisTemplate.expire(key, timeout, unit); - } - - /** - * 鑾峰彇鏈夋晥鏃堕棿 - * - * @param key Redis閿� - * @return 鏈夋晥鏃堕棿 - */ - public long getExpire(final String key) - { - return redisTemplate.getExpire(key); - } - - /** - * 鍒ゆ柇 key鏄惁瀛樺湪 + * 鏍规嵁key鑾峰彇value * * @param key 閿� - * @return true 瀛樺湪 false涓嶅瓨鍦� */ - public Boolean hasKey(String key) - { + public Object get(String key) { + return redisTemplate.opsForValue().get(key); + } + + /** + * 鏄惁瀛樺湪key + * + * @param key 閿� + */ + public boolean hasKey(String key) { return redisTemplate.hasKey(key); } /** - * 鑾峰緱缂撳瓨鐨勫熀鏈璞°�� + * 绉婚櫎key * - * @param key 缂撳瓨閿�� - * @return 缂撳瓨閿�煎搴旂殑鏁版嵁 + * @param key 閿� */ - public <T> T getCacheObject(final String key) - { - ValueOperations<String, T> operation = redisTemplate.opsForValue(); - return operation.get(key); - } - - /** - * 鍒犻櫎鍗曚釜瀵硅薄 - * - * @param key - */ - public boolean deleteObject(final String key) - { - return redisTemplate.delete(key); - } - - /** - * 鍒犻櫎闆嗗悎瀵硅薄 - * - * @param collection 澶氫釜瀵硅薄 - * @return - */ - public boolean deleteObject(final Collection collection) - { - return redisTemplate.delete(collection) > 0; - } - - /** - * 缂撳瓨List鏁版嵁 - * - * @param key 缂撳瓨鐨勯敭鍊� - * @param dataList 寰呯紦瀛樼殑List鏁版嵁 - * @return 缂撳瓨鐨勫璞� - */ - public <T> long setCacheList(final String key, final List<T> dataList) - { - Long count = redisTemplate.opsForList().rightPushAll(key, dataList); - return count == null ? 0 : count; - } - - /** - * 鑾峰緱缂撳瓨鐨刲ist瀵硅薄 - * - * @param key 缂撳瓨鐨勯敭鍊� - * @return 缂撳瓨閿�煎搴旂殑鏁版嵁 - */ - public <T> List<T> getCacheList(final String key) - { - return redisTemplate.opsForList().range(key, 0, -1); - } - - /** - * 缂撳瓨Set - * - * @param key 缂撳瓨閿�� - * @param dataSet 缂撳瓨鐨勬暟鎹� - * @return 缂撳瓨鏁版嵁鐨勫璞� - */ - public <T> BoundSetOperations<String, T> setCacheSet(final String key, final Set<T> dataSet) - { - BoundSetOperations<String, T> setOperation = redisTemplate.boundSetOps(key); - Iterator<T> it = dataSet.iterator(); - while (it.hasNext()) - { - setOperation.add(it.next()); - } - return setOperation; - } - - /** - * 鑾峰緱缂撳瓨鐨剆et - * - * @param key - * @return - */ - public <T> Set<T> getCacheSet(final String key) - { - return redisTemplate.opsForSet().members(key); - } - - /** - * 缂撳瓨Map - * - * @param key - * @param dataMap - */ - public <T> void setCacheMap(final String key, final Map<String, T> dataMap) - { - if (dataMap != null) { - redisTemplate.opsForHash().putAll(key, dataMap); + public void delete(String key) { + if (hasKey(key)) { + redisTemplate.delete(key); } } /** - * 鑾峰緱缂撳瓨鐨凪ap + * 娓呯┖鎸囧畾閿墠缂� * - * @param key - * @return + * @param subKeyString 閿墠缂� */ - public <T> Map<String, T> getCacheMap(final String key) - { - return redisTemplate.opsForHash().entries(key); + public void clearKeys(String subKeyString) { + Set<String> keys = redisTemplate.keys(subKeyString + "*"); + if (!keys.isEmpty()) { + redisTemplate.delete(keys); + } } /** - * 寰�Hash涓瓨鍏ユ暟鎹� - * - * @param key Redis閿� - * @param hKey Hash閿� - * @param value 鍊� + * 娓呯┖鎵�鏈� */ - public <T> void setCacheMapValue(final String key, final String hKey, final T value) - { - redisTemplate.opsForHash().put(key, hKey, value); + public void clearAll() { + Set<String> keys = redisTemplate.keys("*"); + if (!keys.isEmpty()) { + redisTemplate.delete(keys); + } } /** - * 鑾峰彇Hash涓殑鏁版嵁 - * - * @param key Redis閿� - * @param hKey Hash閿� - * @return Hash涓殑瀵硅薄 + * 鏍规嵁Key鑾峰彇List闆嗗悎 */ - public <T> T getCacheMapValue(final String key, final String hKey) - { - HashOperations<String, String, T> opsForHash = redisTemplate.opsForHash(); - return opsForHash.get(key, hKey); + public <T> List<T> getListByKey(String key) { + Object obj = get(key); + if (obj instanceof List<?>) { + return (List<T>) obj; + } + + return null; } /** - * 鑾峰彇澶氫釜Hash涓殑鏁版嵁 - * - * @param key Redis閿� - * @param hKeys Hash閿泦鍚� - * @return Hash瀵硅薄闆嗗悎 + * 鏍规嵁Key淇濆瓨鏁版嵁 */ - public <T> List<T> getMultiCacheMapValue(final String key, final Collection<Object> hKeys) - { - return redisTemplate.opsForHash().multiGet(key, hKeys); + public <T> void saveListByKey(String key, List<T> list) { + if (null != list && !list.isEmpty()) { + put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES); + } } /** - * 鍒犻櫎Hash涓殑鏌愭潯鏁版嵁 - * - * @param key Redis閿� - * @param hKey Hash閿� - * @return 鏄惁鎴愬姛 + * 鏍规嵁Key淇濆瓨鏁版嵁 */ - public boolean deleteCacheMapValue(final String key, final String hKey) - { - return redisTemplate.opsForHash().delete(key, hKey) > 0; - } - - /** - * 鑾峰緱缂撳瓨鐨勫熀鏈璞″垪琛� - * - * @param pattern 瀛楃涓插墠缂� - * @return 瀵硅薄鍒楄〃 - */ - public Collection<String> keys(final String pattern) - { - return redisTemplate.keys(pattern); + public <T> void saveListByKey(String key, List<T> list, Integer minutes) { + if (null != list && !list.isEmpty()) { + put(key, list, minutes, TimeUnit.MINUTES); + } } } -- Gitblit v1.9.3