redis删除hash方法及方式

4 篇文章 0 订阅
3 篇文章 0 订阅

在工作中遇到删除hash类型的缓存时遇到了,怎样也删不掉redis里面的缓存,后来发现,hash类型和string类型的换成删除方式不一样,所以在这里做一下整理,后面再有遇到其他类型的,还会陆续的完善到这篇文章里来,详细如下:

 

针对hash类型的缓存删除,函数:

因为需要删除很多缓存内容,所以在common.php写的公共函数进行调用,

function processredis($type,$id=false,$code=false){

        #这里的$type就是标识需要删除哪一块的缓存类型,根据这个类型删除相应的缓存内容。

        if($type==1){

                #hash类型

                $XXXXXheart = $id;
                if($XXXXXheart ){
                    $key        = "{$XXXXXheart }";
                    $redisXXXid = $redisModel->hashDel("XXXXXX:XXXXXXX:XXXXX",$key);
                }

        }elseif($type == 2) {
                #string类型缓存
                $chNum = $id;
                if($chNum != null){
                    $key        = "XXXXX:XXXXX:XXXX:".$chNum ;
                    $redisXXXXid = $redisModel->delete($key);
                }
       }

}

Spring Data Redis提供了多种操作Redis Hash数据类型的接口,下面介绍一些常用的方法: 1. put(K key, HK hashKey, HV value):向指定key的Hash中添加一个键值对。 ```java hashOps.put("myKey", "myField", "myValue"); ``` 2. putAll(K key, Map<? extends HK, ? extends HV> m):向指定key的Hash中添加一个Map。 ```java Map<String, String> map = new HashMap<>(); map.put("field1", "value1"); map.put("field2", "value2"); hashOps.putAll("myKey", map); ``` 3. get(K key, HK hashKey):获取指定key的Hash中指定hashKey的值。 ```java String value = hashOps.get("myKey", "myField"); ``` 4. delete(K key, HK... hashKeys):删除指定key的Hash中指定hashKey。 ```java hashOps.delete("myKey", "myField"); ``` 5. hasKey(K key, Object hashKey):检查指定key的Hash中是否存在指定hashKey。 ```java boolean exists = hashOps.hasKey("myKey", "myField"); ``` 6. size(K key):获取指定key的Hash中键值对的数量。 ```java long size = hashOps.size("myKey"); ``` 7. keys(K key):获取指定key的Hash中所有的hashKey。 ```java Set<String> keys = hashOps.keys("myKey"); ``` 8. values(K key):获取指定key的Hash中所有的value。 ```java List<String> values = hashOps.values("myKey"); ``` 9. entries(K key):获取指定key的Hash中所有的键值对。 ```java Map<String, String> entries = hashOps.entries("myKey"); ``` 10. increment(K key, HK hashKey, long delta):将指定key的Hash中指定hashKey的值加上delta。 ```java hashOps.increment("myKey", "myField", 1L); ``` 11. increment(K key, HK hashKey, double delta):将指定key的Hash中指定hashKey的值加上delta。 ```java hashOps.increment("myKey", "myField", 1.0); ``` 总之,Spring Data Redis提供了丰富的操作Redis Hash数据类型的接口,可以根据实际需求进行选择和使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值