zoukankan      html  css  js  c++  java
  • redis 模糊删除实现

    redis 没有直接提供模糊删除的实现,我们可以根据现有的指令进行组合实现:

    import java.util.Arrays;
    import java.util.Set;
    
    import javax.annotation.Resource;
    
    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.stereotype.Service;
    
    import com.nonobank.application.service.RedisCacheService;
    
    @Service("redisCacheService")
    public class RedisCacheServiceImpl implements RedisCacheService{
        //private final Logger logger = LoggerFactory.getLogger(getClass());
        
        @Resource(name = "stringRedisTemplate")
        private RedisTemplate<String, String> redisTemplate;    
    
        @Override
        public void deleteByKey(String key) {
            redisTemplate.delete(key);
        }
    
        @Override
        public void deleteByPrex(String prex) {
            Set<String> keys=redisTemplate.keys(prex+"*");
    
            /*for test    
             *Iterator<String> it=keys.iterator();
             * while(it.hasNext()){
                logger.info(it.next());
            }*/
            redisTemplate.delete(keys);
        }
    
        @Override
        public void deleteBySuffix(String suffix) {
            Set<String> keys=redisTemplate.keys("*"+suffix);
            redisTemplate.delete(keys);
        }
    
        @Override
        public void deleteByKeys(String... keys) {
            redisTemplate.delete(Arrays.asList(keys));        
        }
    }
  • 相关阅读:
    03Qt信号与槽(2)
    01Qt中的隐式共享
    10GNU C语言函数调用
    09GNU C语言程序编译
    第一本C语言笔记(下)
    07控制器和控制卡(3)
    06控制器和控制卡(2)
    集合
    linux指令(目录类操作指令)
    面向对象三大特征
  • 原文地址:https://www.cnblogs.com/davidwang456/p/4997398.html
Copyright © 2011-2022 走看看