亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

好程序員Java學習路線分享Redis快速入門

發布時間:2020-06-12 20:36:20 來源:網絡 閱讀:217 作者:wx5d42865f47214 欄目:編程語言

好程序員Java學習路線分享Redis快速入門,Redis的啟動

1.基于docker啟動

1) 不帶配置文件啟動?docker run -p 6379:6379 redis

2) 帶配置文件啟動

docker run -p 6379:6379 -v /usr/local/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf redis redis-server /usr/local/etc/redis/redis.conf

?

3)使用docker容器內的客戶端來操作redis服務器

以交互的方式進入到redis容器,再在/usr/local/bin/使用redis-cli工具連接redis服務器

好程序員Java學習路線分享Redis快速入門

好程序員Java學習路線分享Redis快速入門

得輸密碼

auth java1904

2.使用原生tar包啟動

?

1)從官方下載tar.gz壓縮包,上傳到linux

?

2)解壓

tar -zxvf ?...

?

3)下載make ?

???apt-get install make

?

4)下載gcc,因為redisc寫的,需要gcc工具

apt-get intall gcc

?

5)?進入解壓出來的文件夾內,然后使用make進行編譯

?

6)進入?src,執行./redis-server ?../redis.conf ???開啟服務端

?

7)使用redis內部的客戶端,來連接服務端,對redis服務端進行操作

??src里 ???執行 ??./redis-cli

好程序員Java學習路線分享Redis快速入門

?

二、Redis桌面版客戶端工具的使用

好程序員Java學習路線分享Redis快速入門

三、Redis的配置文件

redis.conf

在啟動redis服務器時,可以通過配置文件里面的參數的設置,來設置服務器,如果啟動redis服務器,不帶配置文件,那么參數都是默認值。

1.解除本機綁定

# bind ?127.0.0.1?注釋掉

2.redis數據庫默認擁有16個庫,數據會被存放在這16個庫中的某一個。

3.設置密碼

在連接時需要輸入密碼

好程序員Java學習路線分享Redis快速入門

四、JavaRedis客戶端:Jedis

redis自帶的客戶端:?redis-cli

1.引入依賴

<dependency>
????<groupId>redis.clients</groupId>
????<artifactId>jedis</artifactId>
????<version>2.9.0</version>
</dependency>

2.使用Jedis工具類

public?class?MyRedis?{
????public?static?void?main(String[]?args)?{
????????Jedis?jedis?=?new?Jedis("192.168.2.128",6379);
????????jedis.auth("java1904");
????????jedis.set("兩個月后的目標","12k");
????????String?target?=?jedis.get("兩個月后的目標");
????????System.out.println(target);
????}
}

五、Redis的五大數據類型

1. String類型

1)增刪改查

set ?key ?value ???添加/修改 ?鍵值對

get ?key ?==> value ??根據鍵得到值

del ?key1 [key2...] ?根據鍵刪除鍵值對,返回值刪除的個數

好程序員Java學習路線分享Redis快速入門

mset ?k1 v1 ?k2 v2 [key value ...] ???一次性插入多個值

mget ?k1 ?k2 ?????????????一次性拿多個值

?

2)其他命令

incr ?????對整數進行自增,浮點數也不行: ??set ?k1 ?1000 ?????????incr k1

decr ???對整數進行遞減

?

incrby ?鍵 ?步長 ???一次增長指定步長的值 ???

decrby ?鍵 ?步長 ??一次減少指定步長的值


2. hash類型

數據類型的特點:

?- ?值: ?鍵值對

而且?鍵里可以存放多個鍵值對

?

hset ??k1 ??-

hget ??k1 ?

?

hmset ?k1 ?-值 ?鍵-值?...

hmget ?k1 ?鍵 ?鍵...

?

hdel ???k1 ??鍵 ?鍵...

?

其他命令:

hlen ?k1

查看k1有幾個鍵值對

?

hexists k1?

查看鍵是否存在于k1

hgetall k1

獲得K1中的所有的鍵值對

?

注意:?在實際使用時,往往會使用這種命名方式:??通過:”對鍵名進行分割,以起到語義化的效果。

比如??“user:1001:dreams” ?:?用戶id1001的這個用戶的所有夢想

?

如果鍵沖突了,那么如果之前的數據類型與現在的數據類型不同,則會報這個異常:

redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key holding the wrong kind of value

?

使用jedis進行操作時,hmset中需要存入map集合

HashMap<String,String>?map?=?new?HashMap<String,?String>();
map.put("d1","10000");
map.put("d2","20000");
jedis.hmset("user:1001:dreams",map);

hash類型的應用場景: 存對象時更方便

好程序員Java學習路線分享Redis快速入門

3.?列表類型?List

列表可以實現棧和隊列的效果

好程序員Java學習路線分享Redis快速入門

lpop?從左邊出列隊

好程序員Java學習路線分享Redis快速入門

rpush?和 ?rpop

好程序員Java學習路線分享Redis快速入門

模擬棧的效果:

?

模擬隊列的效果:?先進先出

?

其他命令:

LLEN key,查詢列表的長度

LINDEX key index,獲取指定索引的值?get(int index)

LSET key index value,設置指定索引的值

Ltrim key start end?保留指定索引范圍的值

4.Set類型

Sadd key element [element]?添加元素

Scard key?計算元素個數

Smembers key?獲取所有的元素

Srem key element [element]?刪除元素 ?

Sismember key element?判斷元素是否在集合中,存在返回1,否則返回0

Spop key?從集合隨機彈出元素

5.zset類型

是一個有序的集合

?

常用命令:

Zadd key?score?member [score?member ...]?添加成員,并為每個成員設置分數

Zcard key?計算成員的個數

Zscore key member?計算某個成員的分數

Zrank key member?計算某個成員的排名

Zincrby key increment member?增加成員的分數

Zrange key start end withscores?返回指定排名范圍的成員

zrevrange key start end?逆序展示

Zrem key member [member]?刪除成員、

?

jedis的操作

@Test
public?void?testZset(){
????Jedis?jedis?=?new?Jedis("192.168.2.128",6379);
????jedis.auth("java1904");

????HashMap<String,Double>?map?=?new?HashMap<String,?Double>();

????map.put("l1",100d);
????map.put("l2",200d);


????//?map是一個HashMap<String,Double>?的map?
????jedis.zadd("order1",map);

????jedis.zincrby("order1",200d,"l1");

????Set<String>?order1?=?jedis.zrevrange("order1",?0,?-1);

????System.out.println(order1);


}

六、使用Jedis連接池

package?com.qf.redis.util;

import?redis.clients.jedis.Jedis;
import?redis.clients.jedis.JedisPool;
import?redis.clients.jedis.JedisPoolConfig;

public?class?JedisPoolUtil?{

????private?static?JedisPool?pool?;

????static{

????????JedisPoolConfig?config?=?new?JedisPoolConfig();

????????config.setMaxIdle(100);
????????config.setMaxWaitMillis(2000);
????????config.setMaxTotal(200);

????????String?host?=?"192.168.2.128";
????????pool?=?new?JedisPool(config,host);

????}




????public?static?Jedis?getJedisFromPool(){

???????return??pool.getResource();

????}

}

使用連接池:

Jedis jedis = JedisPoolUtil.getJedisFromPool();

jedis.auth("java1904");

?

?


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沂源县| 阳城县| 北海市| 门头沟区| 东至县| 攀枝花市| 特克斯县| 南华县| 罗田县| 根河市| 鲁甸县| 抚州市| 西乡县| 蚌埠市| 改则县| 西乌珠穆沁旗| 苍梧县| 巴彦淖尔市| 蓬溪县| 时尚| 常熟市| 新乡市| 吴堡县| 洱源县| 镇原县| 万宁市| 眉山市| 韶山市| 德清县| 长丰县| 墨江| 伽师县| SHOW| 宣威市| 肥城市| 郎溪县| 山丹县| 合山市| 沽源县| 仁化县| 汉沽区|