redis批量删除namespace下的数据

在开发中为了更好的管理数据,对redis进行了分组存储操作,在存值时加了命名空间来实现,如下:@Cacheable的value来实现分组

复制代码
@Cacheable(value = "config",key ="#comparamid+'_'+#comCode" )/* */
@Query(value = "select * from test  where comparamid=?1 and  configcomcode=?2",nativeQuery = true)
public List <test> findByCondition(long comparamid,String comCode );

redis保存数据如下:

在批量获取数据时也需要加上namespace的前缀

因此在java后台批量删除时就可以用一下代码:

复制代码
 @Autowired
    private RedisTemplate<String, ?> redisTemplate;

   
 @RequestMapping(value = "/deal", method = RequestMethod.GET)
    public Long delByPrefix(final String prefixKey){
        //删除config::4开头的redis数据
        Set<String> keys = redisTemplate.keys("config::4*");
        if(!CollectionUtils.isEmpty(keys)) {
            return redisTemplate.delete(keys);
        }
        return "SUCESS";
    }

当然也可以利用客户端一件删除:

相关推荐
廿一夏7 小时前
MySql存储引擎与索引
数据库·sql·mysql
Mahir087 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
曲幽7 小时前
我用了FastApiAdmin后,连夜把踩过的坑都整理出来了
redis·python·postgresql·vue3·fastapi·web·sqlalchemy·admin·fastapiadmin
lzhdim9 小时前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室10 小时前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
TDengine (老段)10 小时前
TDengine Tag 设计哲学与 Schema 变更机制
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
YOU OU11 小时前
Spring IoC&DI
java·数据库·spring
Muscleheng12 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿13 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-13 小时前
Redis 命令
数据库·redis·缓存