最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

redis的hash類型操作方法

 更新時間:2023年06月26日 11:25:46   作者:船長@  
Hash 是一個 String 類型的 field(字段) 和 value(值) 的映射表,hash 特別適合用于存儲對象,這篇文章主要介紹了redis的hash類型的詳解,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

簡介

Hash是一個鍵值對的集合。Hash 是一個 String 類型的 field(字段) 和 value(值) 的映射表,hash 特別適合用于存儲對象。

Hash存儲結(jié)構(gòu)優(yōu)化:

如果field數(shù)量較少,存儲結(jié)構(gòu)優(yōu)化為類數(shù)組結(jié)構(gòu)

如果field數(shù)量較多,存儲結(jié)構(gòu)使用HashMap結(jié)構(gòu)

原生操作

增加/修改【key的field的value】

增加/修改

hset key field value

如果哈希表不存在,一個新的哈希表被創(chuàng)建并進行 HSET 操作。 如果字段已經(jīng)存在于哈希表中,舊值將被重寫

增加(多個)

hmset key field1 value1 field2 value2……

增加(鎖,只有field不存在時生效)

 hsetnx key field value

如果哈希表不存在,一個新的哈希表被創(chuàng)建并進行 hsetnx 操作。

如果字段已經(jīng)存在于哈希表中,操作無效。

如果 key 不存在,一個新哈希表被創(chuàng)建并執(zhí)行 hsetnx 命令

查詢

查詢一個(key的field的value)

hget key field

查詢所有field

hkeys key

查詢所有value

hvals key

刪除【key的field】

刪除一個或多個

hdel key field1 field2……

不存在的字段將被忽略

方法 判斷指定key中是否存在field

hexists key field

如果哈希表含有給定字段,返回 1 。 如果哈希表不含有給定字段,或 key 不存在,返回 0

為哈希表key中的field字段的值加上增量increment(數(shù)字)

hincrby key field increment

增量也可以為負(fù)數(shù),相當(dāng)于對指定字段進行減法操作 如果哈希表的 key 不存在,一個新的哈希表被創(chuàng)建并執(zhí)行 hincrby 命令 如果指定的字段不存在,那么在執(zhí)行命令前,字段的值被初始化為 0 對一個儲存字符串值的字段執(zhí)行 hincrby 命令將造成一個錯誤

java操作redis的hash類型

【boundHashOps()】 增加 往指定key中存儲 鍵值

redisTemplate.boundHashOps("demo").put("1",1);

批量存儲到指定key中

Map<String,String> map = new HashMap<>();
          map.put("3","zhangsan");
          map.put("4","lisi");
          redisTemplate.boundHashOps("demo").putAll(map);

根據(jù)指定key判斷鍵是否存在,存在返回false不新增,不存在則新增鍵值對返回true

System.out.println(redisTemplate.boundHashOps("demo").putIfAbsent("7", 5));

修改

重新命名當(dāng)前key的名稱

redisTemplate.boundHashOps(key).rename("test");          

查詢

根據(jù)指定key中得鍵取出值

System.out.println(redisTemplate.boundHashOps("demo").get("1"));

根據(jù)指定key取出所有鍵

Set<Object> keys = redisTemplate.boundHashOps("demo").keys();

獲取指定key中所有鍵值對得值

List<Object> values = redisTemplate.boundHashOps("demo").values();
System.out.println(values);

根據(jù)指定key取出全部鍵值對

 Map&lt;Object, Object&gt; entries &#61; redisTemplate.boundHashOps(&#34;demo&#34;).entries();

刪除

根據(jù)指定key中得鍵刪除

redisTemplate.boundHashOps("demo").delete("1");

方法

設(shè)置key得到期時間 TimeUnit 設(shè)置時間類型(時、分、秒...)

redisTemplate.boundHashOps("demo").expire(100000, TimeUnit.MILLISECONDS);

獲取當(dāng)前key過期時間

System.out.println(redisTemplate.boundHashOps("demo").getExpire());

獲取指定key得元素長度

Long size &#61; redisTemplate.boundHashOps(&#34;demo&#34;).size();

判斷指定key中是否存在該鍵

System.out.println(redisTemplate.boundHashOps(&#34;demo&#34;).hasKey(&#34;1&#34;));

獲取當(dāng)前key的存儲方式

System.out.println(redisTemplate.boundHashOps(&#34;demo&#34;).getType());

到此這篇關(guān)于redis的hash類型的詳解的文章就介紹到這了,更多相關(guān)redis的hash類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • redislive監(jiān)控redis服務(wù)的圖文教程_動力節(jié)點Java 學(xué)院整理

    redislive監(jiān)控redis服務(wù)的圖文教程_動力節(jié)點Java 學(xué)院整理

    這篇文章主要介紹了redislive監(jiān)控redis服務(wù)的圖文教程_動力節(jié)點Java 學(xué)院整理,需要的朋友可以參考下
    2017-08-08
  • 基于Redis實現(xiàn)共享Session登錄的實現(xiàn)

    基于Redis實現(xiàn)共享Session登錄的實現(xiàn)

    本文主要介紹了基于Redis實現(xiàn)共享Session登錄的實現(xiàn),包括發(fā)送短信驗證碼、短信驗證碼登錄和注冊、以及登錄狀態(tài)校驗的流程,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Linux服務(wù)器Redis6.x安裝、配置全過程

    Linux服務(wù)器Redis6.x安裝、配置全過程

    Redis是一個高性能的鍵值對數(shù)據(jù)庫,支持多種數(shù)據(jù)類型和持久化方式,它在緩存、分布式系統(tǒng)、聊天室、任務(wù)隊列等領(lǐng)域有廣泛應(yīng)用,本文詳細(xì)介紹了Redis的安裝、配置、高級類型和持久化機制
    2026-03-03
  • Redis集群的節(jié)點之間通信的實現(xiàn)

    Redis集群的節(jié)點之間通信的實現(xiàn)

    Redis集群的節(jié)點之間通過Gossip協(xié)議進行通信,在Redis集群中,Gossip協(xié)議用于節(jié)點之間的狀態(tài)同步和故障檢測,下面就來詳細(xì)的介紹一下Redis集群節(jié)點通信,感興趣的可以了解一下
    2025-09-09
  • 淺談Redis緩存更新策略

    淺談Redis緩存更新策略

    這篇文章主要介紹了Redis緩存更新策略的相關(guān)資料,講解的十分細(xì)致,有需要的小伙伴可以參考下
    2022-08-08
  • Redis迷你版微信搶紅包實戰(zhàn)

    Redis迷你版微信搶紅包實戰(zhàn)

    本文主要介紹了Redis迷你版微信搶紅包實戰(zhàn)
    2025-05-05
  • Redis 數(shù)據(jù)庫忘記密碼找回或重置的解決方法

    Redis 數(shù)據(jù)庫忘記密碼找回或重置的解決方法

    對于 Redis 數(shù)據(jù)庫,如果忘記了密碼,可以通過密碼重置來找回密碼,今天通過本文給大家分享Redis 數(shù)據(jù)庫忘記密碼找回或重置的解決方法,感興趣的朋友一起看看吧
    2024-01-01
  • Redis實現(xiàn)單設(shè)備登錄的場景分析

    Redis實現(xiàn)單設(shè)備登錄的場景分析

    這篇文章主要介紹了Redis實現(xiàn)單設(shè)備登錄,用戶首次登錄時,將用戶信息存入Redis,key是用戶id,value是token,當(dāng)用戶在其他設(shè)備登錄時,會重新生成token,這個時候原先的token已經(jīng)被覆蓋了,本文給大家提供樣例及核心代碼,感興趣的朋友參考下吧
    2022-04-04
  • redis主從+哨兵搭建的實現(xiàn)示例

    redis主從+哨兵搭建的實現(xiàn)示例

    本文主要介紹了redis主從+哨兵搭建的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • redis發(fā)布和訂閱_動力節(jié)點Java學(xué)院整理

    redis發(fā)布和訂閱_動力節(jié)點Java學(xué)院整理

    這篇文章主要為大家詳細(xì)介紹了redis發(fā)布和訂閱的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08

最新評論

改则县| 仁化县| 庆城县| 枣阳市| 鲁甸县| 东源县| 繁昌县| 洛宁县| 大田县| 文山县| 曲沃县| 江门市| 巴青县| 鄂尔多斯市| 诸暨市| 宝丰县| 银川市| 大悟县| 基隆市| 甘肃省| 阿拉善右旗| 万山特区| 泗阳县| 方城县| 汝阳县| 噶尔县| 邹城市| 富宁县| 绿春县| 南安市| 木里| 伊吾县| 遂宁市| 新建县| 庐江县| 屯留县| 乐业县| 新河县| 布拖县| 平阳县| 赤水市|