摘要:如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。聲明當(dāng)前類注教程的中文網(wǎng)官網(wǎng)附基礎(chǔ)知識(shí)整理之操作一基礎(chǔ)知識(shí)整理之操作二
Java操作Redis之操作數(shù)據(jù) 1.操作 String 1.1 源碼
public void stringOperator(){ //添加數(shù)據(jù) jedis.set("name", "Wayfreem");// 添加一個(gè) 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")); // 刪除某個(gè)鍵 jedis.del("name"); System.out.println("刪除name 鍵之后:" + jedis.get("name")); jedis.mset("name", "Wayfreem", "age", "23", "qq", "5234XXXX"); // 設(shè)置多個(gè)鍵值對(duì) //進(jìn)行加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"); //添加一個(gè) user 的 key, value 為 map jedis.hmset("user", map); //獲取對(duì)應(yīng)key下的value,用數(shù)組返回 List rsmap = jedis.hmget("user", "name", "age", "qq"); System.out.println(rsmap); // 刪除map中的某個(gè)鍵值, 第一個(gè)參數(shù)是 map(現(xiàn)在的user),第二個(gè)參數(shù)是 map 中的 key jedis.hdel("user","age"); System.out.println(jedis.hmget("user","age")); // 刪除了,返回null System.out.println(jedis.hlen("user")); // 返回key為user的鍵中存放的值的個(gè)數(shù)2 System.out.println(jedis.exists("user")); // 是否存在key為user的記錄 返回true System.out.println(jedis.hkeys("user")); // 返回map對(duì)象中的所有key System.out.println(jedis.hvals("user")); // 返回map對(duì)象中的所有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)); //返回值為 [] 因?yàn)闆]有數(shù)據(jù) /* Redis Lpush 命令將一個(gè)或多個(gè)值插入到列表頭部。 * 如果 key 不存在,一個(gè)空列表會(huì)被創(chuàng)建并執(zhí)行 LPUSH 操作。 * 當(dāng) key 存在但不是列表類型時(shí),返回一個(gè)錯(cuò)誤。 */ // 先向key framework中存放三條數(shù)據(jù) jedis.lpush("framework", "angular"); jedis.lpush("framework", "vue"); jedis.lpush("framework", "react"); // 再取出所有數(shù)據(jù)jedis.lrange是按范圍取出, // 第一個(gè)是key,第二個(gè)是起始位置,第三個(gè)是結(jié)束位置,jedis.llen獲取長(zhǎng)度 -1表示取得所有 System.out.println(jedis.lrange("framework", 0, -1)); /* * Redis RPUSH命令插入所有指定的值,在存儲(chǔ)在列表的key尾部。 * 如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。 * 當(dāng)key持有的值不是列表,則返回一個(gè)錯(cuò)誤。 */ 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ǔ)知識(shí)整理之操作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 對(duì)象 private static Jedis jedis; private String host = "127.0.0.1"; //測(cè)試地址 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)限認(rèn)證 System.out.println("connet the redis:"+auth); } catch (Exception e) { System.out.println("緩存鏈接錯(cuò)誤"); } } /** * 清除所有的緩存 */ 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 * 對(duì)指定的 key 加 1操作 使用 incr */ public void stringOperator(){ //添加數(shù)據(jù) jedis.set("name", "Wayfreem");// 添加一個(gè) 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")); // 刪除某個(gè)鍵 jedis.del("name"); System.out.println("刪除name 鍵之后:" + jedis.get("name")); jedis.mset("name", "Wayfreem", "age", "23", "qq", "5234XXXX"); // 設(shè)置多個(gè)鍵值對(duì) //進(jìn)行加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 對(duì)應(yīng)的個(gè)數(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"); //添加一個(gè) user 的 key, value 為 map jedis.hmset("user", map); //獲取對(duì)應(yīng)key下的value,用數(shù)組返回 List rsmap = jedis.hmget("user", "name", "age", "qq"); System.out.println(rsmap); // 刪除map中的某個(gè)鍵值, 第一個(gè)參數(shù)是 map(現(xiàn)在的user),第二個(gè)參數(shù)是 map 中的 key jedis.hdel("user","age"); System.out.println(jedis.hmget("user","age")); // 刪除了,返回null System.out.println(jedis.hlen("user")); // 返回key為user的鍵中存放的值的個(gè)數(shù)2 System.out.println(jedis.exists("user")); // 是否存在key為user的記錄 返回true System.out.println(jedis.hkeys("user")); // 返回map對(duì)象中的所有key System.out.println(jedis.hvals("user")); // 返回map對(duì)象中的所有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)); //返回值為 [] 因?yàn)闆]有數(shù)據(jù) /* Redis Lpush 命令將一個(gè)或多個(gè)值插入到列表頭部。 * 如果 key 不存在,一個(gè)空列表會(huì)被創(chuàng)建并執(zhí)行 LPUSH 操作。 * 當(dāng) key 存在但不是列表類型時(shí),返回一個(gè)錯(cuò)誤。 */ // 先向key framework中存放三條數(shù)據(jù) jedis.lpush("framework", "angular"); jedis.lpush("framework", "vue"); jedis.lpush("framework", "react"); // 再取出所有數(shù)據(jù)jedis.lrange是按范圍取出, // 第一個(gè)是key,第二個(gè)是起始位置,第三個(gè)是結(jié)束位置,jedis.llen獲取長(zhǎng)度 -1表示取得所有 System.out.println(jedis.lrange("framework", 0, -1)); /* * Redis RPUSH命令插入所有指定的值,在存儲(chǔ)在列表的key尾部。 * 如果鍵不存在,則執(zhí)行壓棧操作之前創(chuàng)建的空列表。 * 當(dāng)key持有的值不是列表,則返回一個(gè)錯(cuò)誤。 */ 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) { //聲明當(dāng)前類 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ǔ)知識(shí)整理之操作Redis(一)
Java基礎(chǔ)知識(shí)整理之操作Redis(二)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/67104.html
摘要:操作之連接以及簡(jiǎn)單操作下載對(duì)應(yīng)的驅(qū)動(dòng)包下載創(chuàng)建一個(gè)連接類連接主機(jī)地址端口號(hào)登錄密碼連接服務(wù)器權(quán)限認(rèn)證連接完成會(huì)返回緩存鏈接錯(cuò)誤查詢所有中的查詢所有的為通配符清除所有的中的是清除所有的的命令如果清理完成,會(huì)返回完整的代碼聲明對(duì)象測(cè)試地址端口密 Java操作Redis之連接以及簡(jiǎn)單操作 1.下載對(duì)應(yīng)的驅(qū)動(dòng)包 下載 jedis.jar :https://mvnrepository.com/a...
摘要:是一個(gè)由寫的存儲(chǔ)系統(tǒng)。是一個(gè)開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹悼梢允亲址A斜砑虾陀行蚣系阮愋汀? REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲(chǔ)系統(tǒng)。Redis是一個(gè)開源的使用ANSI C語言編寫、遵...
摘要:是一個(gè)由寫的存儲(chǔ)系統(tǒng)。是一個(gè)開源的使用語言編寫遵守協(xié)議支持網(wǎng)絡(luò)可基于內(nèi)存亦可持久化的日志型數(shù)據(jù)庫,并提供多種語言的。它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹悼梢允亲址A斜砑虾陀行蚣系阮愋汀? REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲(chǔ)系統(tǒng)。Redis是一個(gè)開源的使用ANSI C語言編寫、遵...
閱讀 2674·2021-11-18 10:02
閱讀 3440·2021-09-22 15:50
閱讀 2368·2021-09-06 15:02
閱讀 3588·2019-08-29 16:34
閱讀 1753·2019-08-29 13:49
閱讀 1282·2019-08-29 13:29
閱讀 3648·2019-08-28 18:08
閱讀 2954·2019-08-26 11:52