/** * @Project: memcache-util * @Package com.hehenian.common.redis * @Title: CacheService.java * @Description: 分布式服务 * * @author: zhanbmf * @date 2015-3-29 下午4:01:30 * @Copyright: HEHENIAN Co.,Ltd. All rights reserved. * @version V1.0 */ package com.hehenian.common.redis; import java.util.Map; import java.util.Set; import java.util.Map.Entry; public class CacheService { private final long FAIL = -1; private final String LOCAL = "local"; private Map<String, SpringRedisCacheService> cacheService; public Map<String, SpringRedisCacheService> getCacheService() { return cacheService; } public void setCacheService( Map<String, SpringRedisCacheService> cacheService) { this.cacheService = cacheService; } /** * 获取本地的默认redis * @return */ public SpringRedisCacheService get() { if (cacheService == null || cacheService.size() == 0) { return null; } return cacheService.get(LOCAL); } /** * 将所有的redis指定key的缓存都清空 * * @param key */ public void clear(Object key) { if (cacheService == null || cacheService.size() == 0) { return; } Set<Entry<String, SpringRedisCacheService>> entrySet = cacheService .entrySet(); for (Entry<String, SpringRedisCacheService> entry : entrySet) { if(entry.getKey().equalsIgnoreCase(LOCAL)){ continue; } long result = entry.getValue().deleteObjectKey(key); if (result == FAIL) {// 重试一次 entry.getValue().deleteObjectKey(key); } } } }