摘要:如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。聲明當前類注教程的中文網(wǎng)官網(wǎng)附基礎(chǔ)知識整理之操作一基礎(chǔ)知識整理之操作二
Java操作Redis之操作數(shù)據(jù) 1.操作 String 1.1 源碼
public void stringOperator(){ //添加數(shù)據(jù) jedis.set("name", "Wayfreem");// 添加一個 key 為 name, 然后 value 為 Wayfreem System.out.println(jedis.get("name"));// 執(zhí)行結(jié)果:xinxin //拼接指定的key jedis.append("name", " is my name"); //在 name 值的后繼續(xù)追加 字符串 System.out.println(jedis.get("name")); // 刪除某個鍵 jedis.del("name"); System.out.println("刪除name 鍵之后:" + jedis.get("name")); jedis.mset("name", "Wayfreem", "age", "23", "qq", "5234XXXX"); // 設(shè)置多個鍵值對 //進行加1操作 jedis.incr("age"); System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-"+ jedis.get("qq")); }1.2 執(zhí)行的結(jié)果 1.3 在 redis-cli 中查看 2.操作 Map 2.1 源碼
public void mapOperator(){ //添加數(shù)據(jù) Map2.2 執(zhí)行結(jié)果 2.3 redis-cli 中查看 3.操作List 3.1 源碼map = new HashMap (); map.put("name", "Wayfreem"); map.put("age", "23"); map.put("qq", "5234XXXX"); //添加一個 user 的 key, value 為 map jedis.hmset("user", map); //獲取對應(yīng)key下的value,用數(shù)組返回 List rsmap = jedis.hmget("user", "name", "age", "qq"); System.out.println(rsmap); // 刪除map中的某個鍵值, 第一個參數(shù)是 map(現(xiàn)在的user),第二個參數(shù)是 map 中的 key jedis.hdel("user","age"); System.out.println(jedis.hmget("user","age")); // 刪除了,返回null System.out.println(jedis.hlen("user")); // 返回key為user的鍵中存放的值的個數(shù)2 System.out.println(jedis.exists("user")); // 是否存在key為user的記錄 返回true System.out.println(jedis.hkeys("user")); // 返回map對象中的所有key System.out.println(jedis.hvals("user")); // 返回map對象中的所有value //循環(huán)出所有的key user下面的所有的 K-V Iterator iter = jedis.hkeys("user").iterator(); while (iter.hasNext()) { String key = iter.next(); System.out.println(key + ":" + jedis.hmget("user", key)); } }
public void listOperator() { //刪除指定的key jedis.del("framework"); System.out.println(jedis.lrange("framework", 0, -1)); //返回值為 [] 因為沒有數(shù)據(jù) /* Redis Lpush 命令將一個或多個值插入到列表頭部。 * 如果 key 不存在,一個空列表會被創(chuàng)建并執(zhí)行 LPUSH 操作。 * 當 key 存在但不是列表類型時,返回一個錯誤。 */ // 先向key framework中存放三條數(shù)據(jù) jedis.lpush("framework", "angular"); jedis.lpush("framework", "vue"); jedis.lpush("framework", "react"); // 再取出所有數(shù)據(jù)jedis.lrange是按范圍取出, // 第一個是key,第二個是起始位置,第三個是結(jié)束位置,jedis.llen獲取長度 -1表示取得所有 System.out.println(jedis.lrange("framework", 0, -1)); /* * Redis RPUSH命令插入所有指定的值,在存儲在列表的key尾部。 * 如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。 * 當key持有的值不是列表,則返回一個錯誤。 */ jedis.del("framework"); jedis.rpush("framework", "angular"); jedis.rpush("framework", "vue"); jedis.rpush("framework", "react"); System.out.println(jedis.lrange("framework", 0, -1)); }3.2 執(zhí)行結(jié)果 3.3 redis-cli 中查看 附
結(jié)合Java基礎(chǔ)知識整理之操作Redis(二)中的源碼
import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; import redis.clients.jedis.Jedis; public class RedisStudy { //聲明 redis 對象 private static Jedis jedis; private String host = "127.0.0.1"; //測試地址 private int port = 6379; //端口 private String pwd = "foobared"; //密碼 /** * 連接redis */ public void getJedis() { try { jedis = new Jedis(host, port); // 連接redis服務(wù)器 String auth = jedis.auth(pwd); // 權(quán)限認證 System.out.println("connet the redis:"+auth); } catch (Exception e) { System.out.println("緩存鏈接錯誤"); } } /** * 清除所有的緩存 */ public void ClearDB() { String str = jedis.flushDB(); System.out.println("flush all Keys:" + str); } /** * 找到所有的KEY */ public void findAllKeys(){ Set注set = jedis.keys("*"); for (String str : set) { System.out.println(str); } } /** * 操作String * 添加數(shù)據(jù) 使用 set * 拼接指定 key 使用 append * 刪除指定的key 使用 del * 對指定的 key 加 1操作 使用 incr */ public void stringOperator(){ //添加數(shù)據(jù) jedis.set("name", "Wayfreem");// 添加一個 key 為 name, 然后 value 為 Wayfreem System.out.println(jedis.get("name"));// 執(zhí)行結(jié)果:xinxin //拼接指定的key jedis.append("name", " is my name"); //在 name 值的后繼續(xù)追加 字符串 System.out.println(jedis.get("name")); // 刪除某個鍵 jedis.del("name"); System.out.println("刪除name 鍵之后:" + jedis.get("name")); jedis.mset("name", "Wayfreem", "age", "23", "qq", "5234XXXX"); // 設(shè)置多個鍵值對 //進行加1操作 jedis.incr("age"); System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-"+ jedis.get("qq")); } /** * 操作 Map redis 上面叫做 hash * 添加數(shù)據(jù) 使用 hmset * 獲取數(shù)據(jù) 使用 hmget * 判斷key 對應(yīng)的個數(shù) 使用 hlen * 判斷key 是否存在 使用 exists * 獲取 map 中所有的 key 使用 hkeys * 獲取 map 中所有的 key的 value 使用 hvals */ public void mapOperator(){ //添加數(shù)據(jù) Map map = new HashMap (); map.put("name", "Wayfreem"); map.put("age", "23"); map.put("qq", "5234XXXX"); //添加一個 user 的 key, value 為 map jedis.hmset("user", map); //獲取對應(yīng)key下的value,用數(shù)組返回 List rsmap = jedis.hmget("user", "name", "age", "qq"); System.out.println(rsmap); // 刪除map中的某個鍵值, 第一個參數(shù)是 map(現(xiàn)在的user),第二個參數(shù)是 map 中的 key jedis.hdel("user","age"); System.out.println(jedis.hmget("user","age")); // 刪除了,返回null System.out.println(jedis.hlen("user")); // 返回key為user的鍵中存放的值的個數(shù)2 System.out.println(jedis.exists("user")); // 是否存在key為user的記錄 返回true System.out.println(jedis.hkeys("user")); // 返回map對象中的所有key System.out.println(jedis.hvals("user")); // 返回map對象中的所有value //循環(huán)出所有的key user下面的所有的 K-V Iterator iter = jedis.hkeys("user").iterator(); while (iter.hasNext()) { String key = iter.next(); System.out.println(key + ":" + jedis.hmget("user", key)); } } /** * list操作 * 添加數(shù)據(jù) 使用 lpush 或者 rpush * 獲取數(shù)據(jù) 使用 lrange 是按照一定的范圍獲取 */ public void listOperator() { //刪除指定的key jedis.del("framework"); System.out.println(jedis.lrange("framework", 0, -1)); //返回值為 [] 因為沒有數(shù)據(jù) /* Redis Lpush 命令將一個或多個值插入到列表頭部。 * 如果 key 不存在,一個空列表會被創(chuàng)建并執(zhí)行 LPUSH 操作。 * 當 key 存在但不是列表類型時,返回一個錯誤。 */ // 先向key framework中存放三條數(shù)據(jù) jedis.lpush("framework", "angular"); jedis.lpush("framework", "vue"); jedis.lpush("framework", "react"); // 再取出所有數(shù)據(jù)jedis.lrange是按范圍取出, // 第一個是key,第二個是起始位置,第三個是結(jié)束位置,jedis.llen獲取長度 -1表示取得所有 System.out.println(jedis.lrange("framework", 0, -1)); /* * Redis RPUSH命令插入所有指定的值,在存儲在列表的key尾部。 * 如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。 * 當key持有的值不是列表,則返回一個錯誤。 */ jedis.del("framework"); jedis.rpush("framework", "angular"); jedis.rpush("framework", "vue"); jedis.rpush("framework", "react"); System.out.println(jedis.lrange("framework", 0, -1)); } public static void main(String[] args) { //聲明當前類 RedisStudy rs = new RedisStudy(); rs.getJedis(); rs.listOperator(); } }
Rdies 教程的中文網(wǎng):http://www.redis.net.cn/tutor...
Rdies 官網(wǎng):https://redis.io/
附Java基礎(chǔ)知識整理之操作Redis(一)
Java基礎(chǔ)知識整理之操作Redis(二)
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/67104.html
摘要:操作之連接以及簡單操作下載對應(yīng)的驅(qū)動包下載創(chuàng)建一個連接類連接主機地址端口號登錄密碼連接服務(wù)器權(quán)限認證連接完成會返回緩存鏈接錯誤查詢所有中的查詢所有的為通配符清除所有的中的是清除所有的的命令如果清理完成,會返回完整的代碼聲明對象測試地址端口密 Java操作Redis之連接以及簡單操作 1.下載對應(yīng)的驅(qū)動包 下載 jedis.jar :https://mvnrepository.com/a...
摘要:是一個由寫的存儲系統(tǒng)。是一個開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因為值可以是字符串哈希列表集合和有序集合等類型。 REmote DIctionary Server(Redis) 是一個由Salvatore Sanfilippo寫的key-value存儲系統(tǒng)。Redis是一個開源的使用ANSI C語言編寫、遵...
摘要:是一個由寫的存儲系統(tǒng)。是一個開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因為值可以是字符串哈希列表集合和有序集合等類型。 REmote DIctionary Server(Redis) 是一個由Salvatore Sanfilippo寫的key-value存儲系統(tǒng)。Redis是一個開源的使用ANSI C語言編寫、遵...
閱讀 2664·2021-11-18 10:02
閱讀 3426·2021-09-22 15:50
閱讀 2359·2021-09-06 15:02
閱讀 3577·2019-08-29 16:34
閱讀 1745·2019-08-29 13:49
閱讀 1275·2019-08-29 13:29
閱讀 3629·2019-08-28 18:08
閱讀 2937·2019-08-26 11:52