當(dāng)前位置:
首頁(yè) >
前端技术
> javascript
>内容正文
javascript
SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例
生活随笔
收集整理的這篇文章主要介紹了
SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
場(chǎng)景
SpringDataRedis環(huán)境搭建(詳細(xì)圖文教程):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/104989029
在上面搭建好SpringDataRedis環(huán)境后,進(jìn)行對(duì)數(shù)據(jù)類型的常用操作測(cè)試。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號(hào)
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費(fèi)下載。
實(shí)現(xiàn)
值類型操作(String類型)
??? @Testpublic void setStringValue(){redisTemplate.boundValueOps("name").set("badao");}@Testpublic void getStringValue(){String str = (String) redisTemplate.boundValueOps("name").get();System.out.println(str);}@Testpublic void delStringValue(){redisTemplate.delete("name");}Set類型操作
??? //Set 類型存值@Testpublic void SetSetValue(){redisTemplate.boundSetOps("person").add("霸道");redisTemplate.boundSetOps("person").add("流氓");redisTemplate.boundSetOps("person").add("氣質(zhì)");}//Set 類型取值@Testpublic void GetSetValue(){Set memebers = redisTemplate.boundSetOps("person").members();System.out.println(memebers);}//刪除集合中的某一個(gè)值@Testpublic void SetDeleteOneValue(){redisTemplate.boundSetOps("person").remove("霸道");Set memebers = redisTemplate.boundSetOps("person").members();System.out.println(memebers);}//刪除整個(gè)集合@Testpublic void SetDeleteAllValue(){redisTemplate.delete("person");}List類型操作
??? //存List類型數(shù)據(jù)-右壓棧,后添加的對(duì)象排在后面@Testpublic void SetListRightValue(){redisTemplate.boundListOps("list1").rightPush("霸道");redisTemplate.boundListOps("list1").rightPush("流氓");redisTemplate.boundListOps("list1").rightPush("氣質(zhì)");}//取List類型數(shù)據(jù)@Testpublic void GetListRightValue(){List list = redisTemplate.boundListOps("list1").range(0,2);System.out.println(list);}//存List類型數(shù)據(jù)-左壓棧,后添加的對(duì)象排在前面@Testpublic void SetListLeftValue(){redisTemplate.boundListOps("list1").leftPush("霸道");redisTemplate.boundListOps("list1").leftPush("流氓");redisTemplate.boundListOps("list1").leftPush("氣質(zhì)");}//查詢集合中某個(gè)元素@Testpublic void SlectListValue(){String name = (String) redisTemplate.boundListOps("list1").index(1);System.out.println(name);}//查詢集合中某個(gè)元素@Testpublic void RemoveListValue(){redisTemplate.boundListOps("list1").remove(1,"流氓");}Hash類型操作
??? //存入Hash類型數(shù)據(jù)@Testpublic void SetHashValue(){redisTemplate.boundHashOps("namehash").put("1", "霸道");redisTemplate.boundHashOps("namehash").put("2","流氓");redisTemplate.boundHashOps("namehash").put("3","氣質(zhì)");}//提取所有的keys@Testpublic void GetHashKeys(){Set keys = redisTemplate.boundHashOps("namehash").keys();System.out.println(keys);}//提取所有的值@Testpublic void GetHashValues(){List values = redisTemplate.boundHashOps("namehash").values();System.out.println(values);}//根據(jù)key提取值@Testpublic void GetHashValueByKey(){Object value = redisTemplate.boundHashOps("namehash").get("1");System.out.println(value);}//根據(jù)key移除值@Testpublic void DeleteHashValueByKey(){Object value = redisTemplate.boundHashOps("namehash").delete("1");System.out.println(value);}ZSet類型操作
??? //添加元素到變量中同時(shí)指定元素的分值用于排序的依據(jù)@Testpublic void AddZSetVlues(){redisTemplate.boundZSetOps("zsetvalue").add("A",1);redisTemplate.boundZSetOps("zsetvalue").add("B",2);redisTemplate.boundZSetOps("zsetvalue").add("E",3);redisTemplate.boundZSetOps("zsetvalue").add("C",4);redisTemplate.boundZSetOps("zsetvalue").add("F",5);redisTemplate.boundZSetOps("zsetvalue").add("D",6);}//獲取指定區(qū)間的元素@Testpublic void GetZSetRangeVlues(){Set set = redisTemplate.boundZSetOps("zsetvalue").range(0,-1);System.out.println(set);}//從有序集合中移除一個(gè)或多個(gè)元素@Testpublic void DeleteZSetVlues(){redisTemplate.boundZSetOps("zsetvalue").remove("A","F");}//指定值的分值遞增并返回遞增后的分值@Testpublic void IncrementScoreTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").incrementScore("B",1.1));}//返回有序集合中指定成員的排名,其中有序集合成員按照分?jǐn)?shù)值遞增順序排列@Testpublic void RankTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").rank("B"));}//返回有序集合中指定成員的排名,其中有序集合成員按照分?jǐn)?shù)值遞減順序排列@Testpublic void ReverseRankTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").reverseRank("B"));}//獲取集合元素的大小@Testpublic void SizeTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").zCard());}//移除指定索引位置的成員,其中有序集合成員是按分?jǐn)?shù)值遞增順序排列@Testpublic void RemoveTest(){redisTemplate.boundZSetOps("zsetvalue").removeRange(1,2);}完整示例代碼
package com.badao.test;import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import java.util.List; import java.util.Set;@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:spring/applicationContext-redis.xml") public class SpringDataRedisTest {@Autowiredprivate RedisTemplate redisTemplate;@Testpublic void setStringValue(){redisTemplate.boundValueOps("name").set("badao");}@Testpublic void getStringValue(){String str = (String) redisTemplate.boundValueOps("name").get();System.out.println(str);}@Testpublic void delStringValue(){redisTemplate.delete("name");}//Set 類型存值@Testpublic void SetSetValue(){redisTemplate.boundSetOps("person").add("霸道");redisTemplate.boundSetOps("person").add("流氓");redisTemplate.boundSetOps("person").add("氣質(zhì)");}//Set 類型取值@Testpublic void GetSetValue(){Set memebers = redisTemplate.boundSetOps("person").members();System.out.println(memebers);}//刪除集合中的某一個(gè)值@Testpublic void SetDeleteOneValue(){redisTemplate.boundSetOps("person").remove("霸道");Set memebers = redisTemplate.boundSetOps("person").members();System.out.println(memebers);}//刪除整個(gè)集合@Testpublic void SetDeleteAllValue(){redisTemplate.delete("person");}//存List類型數(shù)據(jù)-右壓棧,后添加的對(duì)象排在后面@Testpublic void SetListRightValue(){redisTemplate.boundListOps("list1").rightPush("霸道");redisTemplate.boundListOps("list1").rightPush("流氓");redisTemplate.boundListOps("list1").rightPush("氣質(zhì)");}//取List類型數(shù)據(jù)@Testpublic void GetListRightValue(){List list = redisTemplate.boundListOps("list1").range(0,2);System.out.println(list);}//存List類型數(shù)據(jù)-左壓棧,后添加的對(duì)象排在前面@Testpublic void SetListLeftValue(){redisTemplate.boundListOps("list1").leftPush("霸道");redisTemplate.boundListOps("list1").leftPush("流氓");redisTemplate.boundListOps("list1").leftPush("氣質(zhì)");}//查詢集合中某個(gè)元素@Testpublic void SlectListValue(){String name = (String) redisTemplate.boundListOps("list1").index(1);System.out.println(name);}//查詢集合中某個(gè)元素@Testpublic void RemoveListValue(){redisTemplate.boundListOps("list1").remove(1,"流氓");}//存入Hash類型數(shù)據(jù)@Testpublic void SetHashValue(){redisTemplate.boundHashOps("namehash").put("1", "霸道");redisTemplate.boundHashOps("namehash").put("2","流氓");redisTemplate.boundHashOps("namehash").put("3","氣質(zhì)");}//提取所有的keys@Testpublic void GetHashKeys(){Set keys = redisTemplate.boundHashOps("namehash").keys();System.out.println(keys);}//提取所有的值@Testpublic void GetHashValues(){List values = redisTemplate.boundHashOps("namehash").values();System.out.println(values);}//根據(jù)key提取值@Testpublic void GetHashValueByKey(){Object value = redisTemplate.boundHashOps("namehash").get("1");System.out.println(value);}//根據(jù)key移除值@Testpublic void DeleteHashValueByKey(){Object value = redisTemplate.boundHashOps("namehash").delete("1");System.out.println(value);}//添加元素到變量中同時(shí)指定元素的分值用于排序的依據(jù)@Testpublic void AddZSetVlues(){redisTemplate.boundZSetOps("zsetvalue").add("A",1);redisTemplate.boundZSetOps("zsetvalue").add("B",2);redisTemplate.boundZSetOps("zsetvalue").add("E",3);redisTemplate.boundZSetOps("zsetvalue").add("C",4);redisTemplate.boundZSetOps("zsetvalue").add("F",5);redisTemplate.boundZSetOps("zsetvalue").add("D",6);}//獲取指定區(qū)間的元素@Testpublic void GetZSetRangeVlues(){Set set = redisTemplate.boundZSetOps("zsetvalue").range(0,-1);System.out.println(set);}//從有序集合中移除一個(gè)或多個(gè)元素@Testpublic void DeleteZSetVlues(){redisTemplate.boundZSetOps("zsetvalue").remove("A","F");}//指定值的分值遞增并返回遞增后的分值@Testpublic void IncrementScoreTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").incrementScore("B",1.1));}//返回有序集合中指定成員的排名,其中有序集合成員按照分?jǐn)?shù)值遞增順序排列@Testpublic void RankTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").rank("B"));}//返回有序集合中指定成員的排名,其中有序集合成員按照分?jǐn)?shù)值遞減順序排列@Testpublic void ReverseRankTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").reverseRank("B"));}//獲取集合元素的大小@Testpublic void SizeTest(){System.out.println(redisTemplate.boundZSetOps("zsetvalue").zCard());}//移除指定索引位置的成員,其中有序集合成員是按分?jǐn)?shù)值遞增順序排列@Testpublic void RemoveTest(){redisTemplate.boundZSetOps("zsetvalue").removeRange(1,2);}}?
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: SpringDataRedis环境搭建(
- 下一篇: Angular中使用JS实现路由跳转、动