日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 对 redis 的基本操作

發布時間:2023/12/18 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 对 redis 的基本操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

一、server端安裝

  1、下載https://github.com/MSOpenTech/redis 可看到當前可下載版本:redis2.6

     2、安裝

    1)解壓后將里面所有文件拷貝至redis安裝目錄。   

     幾個exe程序的功能:    

      ??redis-benchmark.exe:性能測試,用以模擬同時由N個客戶端發送M個 SETs/GETs 查詢 (類似于 Apache 的ab 工具).

???     redis-check-aof.exe:更新日志檢查

??     redis-check-dump.exe:本地數據庫檢查

??     redis-cli.exe:客戶端

???     redis-server.exe:服務端      ?

    2)將路徑添加至系統環境變量:過程略

    3)cmd下啟動redis-server    

    注:由于此處未指定配置文件,系統采用默認參數

  3、下載對應的配置文件

    由上面cmd輸出可知,當前版本為2.6.12

    原頁面上打開所有發布版本,找到2.6.12:    

    下載zip文件:

    拷貝出redis.conf配置文件至安裝目錄:

    配置文件各字段含義:http://cardyn.iteye.com/blog/794194

    ps:如果配置文件的版本和當前exe程序的版本不匹配,很容易

     由于參數不一致導致server端無法啟動。

  4、通過指定的配置文件啟動服務端    

  5、客戶端訪問測試?另起一個cmd窗口:   ?

二、基本功能測試

 主要類

    1)功能類

package com.redis;import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Set;import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.JedisShardInfo; import redis.clients.jedis.ShardedJedis; import redis.clients.jedis.ShardedJedisPool; import redis.clients.jedis.SortingParams;public class RedisClient {private Jedis jedis;//非切片額客戶端連接private JedisPool jedisPool;//非切片連接池private ShardedJedis shardedJedis;//切片額客戶端連接private ShardedJedisPool shardedJedisPool;//切片連接池public RedisClient() { initialPool(); initialShardedPool(); shardedJedis = shardedJedisPool.getResource(); jedis = jedisPool.getResource(); } /*** 初始化非切片池*/private void initialPool() { // 池基本配置 JedisPoolConfig config = new JedisPoolConfig(); config.setMaxActive(20); config.setMaxIdle(5); config.setMaxWait(1000l); config.setTestOnBorrow(false); jedisPool = new JedisPool(config,"127.0.0.1",6379);}/** * 初始化切片池 */ private void initialShardedPool() { // 池基本配置 JedisPoolConfig config = new JedisPoolConfig(); config.setMaxActive(20); config.setMaxIdle(5); config.setMaxWait(1000l); config.setTestOnBorrow(false); // slave鏈接 List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>(); shards.add(new JedisShardInfo("127.0.0.1", 6379, "master")); // 構造池 shardedJedisPool = new ShardedJedisPool(config, shards); } public void show() { KeyOperate(); StringOperate(); ListOperate(); SetOperate();SortedSetOperate();HashOperate(); jedisPool.returnResource(jedis);shardedJedisPool.returnResource(shardedJedis);} private void KeyOperate() {。。。}private void StringOperate() {。。。}private void ListOperate() {。。。}private void SetOperate() {。。。}private void SortedSetOperate() {。。。}private void HashOperate() {。。。} }2)測試類package com.redis;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubnew RedisClient().show(); }} 3、各個功能函數1)key功能private void KeyOperate() { System.out.println("======================key=========================="); // 清空數據 System.out.println("清空庫中所有數據:"+jedis.flushDB());// 判斷key否存在 System.out.println("判斷key999鍵是否存在:"+shardedJedis.exists("key999")); System.out.println("新增key001,value001鍵值對:"+shardedJedis.set("key001", "value001")); System.out.println("判斷key001是否存在:"+shardedJedis.exists("key001"));// 輸出系統中所有的keySystem.out.println("新增key002,value002鍵值對:"+shardedJedis.set("key002", "value002"));System.out.println("系統中所有鍵如下:");Set<String> keys = jedis.keys("*"); Iterator<String> it=keys.iterator() ; while(it.hasNext()){ String key = it.next(); System.out.println(key); }// 刪除某個key,若key不存在,則忽略該命令。System.out.println("系統中刪除key002: "+jedis.del("key002"));System.out.println("判斷key002是否存在:"+shardedJedis.exists("key002"));// 設置 key001的過期時間System.out.println("設置 key001的過期時間為5秒:"+jedis.expire("key001", 5));try{ Thread.sleep(2000); } catch (InterruptedException e){ } // 查看某個key的剩余生存時間,單位【秒】.永久生存或者不存在的都返回-1System.out.println("查看key001的剩余生存時間:"+jedis.ttl("key001"));// 移除某個key的生存時間System.out.println("移除key001的生存時間:"+jedis.persist("key001"));System.out.println("查看key001的剩余生存時間:"+jedis.ttl("key001"));// 查看key所儲存的值的類型System.out.println("查看key所儲存的值的類型:"+jedis.type("key001"));/** 一些其他方法:1、修改鍵名:jedis.rename("key6", "key0");* 2、將當前db的key移動到給定的db當中:jedis.move("foo", 1)*/} 運行結果:======================key========================== 清空庫中所有數據:OK 判斷key999鍵是否存在:false 新增key001,value001鍵值對:OK 判斷key001是否存在:true 新增key002,value002鍵值對:OK 系統中所有鍵如下: key002 key001 系統中刪除key002: 1 判斷key002是否存在:false 設置 key001的過期時間為5秒:1 查看key001的剩余生存時間:3 移除key001的生存時間:1 查看key001的剩余生存時間:-1 查看key所儲存的值的類型:string

2)String功能

rivate void StringOperate()
{
System.out.println("======================String_1==========================");
// 清空數據
System.out.println("清空庫中所有數據:"+jedis.flushDB());

System.out.println("=============增=============");
jedis.set("key001","value001");
jedis.set("key002","value002");
jedis.set("key003","value003");
System.out.println("已新增的3個鍵值對如下:");
System.out.println(jedis.get("key001"));
System.out.println(jedis.get("key002"));
System.out.println(jedis.get("key003"));

System.out.println("=============刪=============");
System.out.println("刪除key003鍵值對:"+jedis.del("key003"));
System.out.println("獲取key003鍵對應的值:"+jedis.get("key003"));

System.out.println("=============改=============");
//1、直接覆蓋原來的數據
System.out.println("直接覆蓋key001原來的數據:"+jedis.set("key001","value001-update"));
System.out.println("獲取key001對應的新值:"+jedis.get("key001"));
//2、直接覆蓋原來的數據
System.out.println("在key002原來值后面追加:"+jedis.append("key002","+appendString"));
System.out.println("獲取key002對應的新值"+jedis.get("key002"));

System.out.println("=============增,刪,查(多個)=============");
/**
* mset,mget同時新增,修改,查詢多個鍵值對
* 等價于:
* jedis.set("name","ssss");
* jedis.set("jarorwar","xxxx");
*/
System.out.println("一次性新增key201,key202,key203,key204及其對應值:"+jedis.mset("key201","value201",
"key202","value202","key203","value203","key204","value204"));
System.out.println("一次性獲取key201,key202,key203,key204各自對應的值:"+
jedis.mget("key201","key202","key203","key204"));
System.out.println("一次性刪除key201,key202:"+jedis.del(new String[]{"key201", "key202"}));
System.out.println("一次性獲取key201,key202,key203,key204各自對應的值:"+
jedis.mget("key201","key202","key203","key204"));
System.out.println();


//jedis具備的功能shardedJedis中也可直接使用,下面測試一些前面沒用過的方法
System.out.println("======================String_2==========================");
// 清空數據
System.out.println("清空庫中所有數據:"+jedis.flushDB());

System.out.println("=============新增鍵值對時防止覆蓋原先值=============");
System.out.println("原先key301不存在時,新增key301:"+shardedJedis.setnx("key301", "value301"));
System.out.println("原先key302不存在時,新增key302:"+shardedJedis.setnx("key302", "value302"));
System.out.println("當key302存在時,嘗試新增key302:"+shardedJedis.setnx("key302", "value302_new"));
System.out.println("獲取key301對應的值:"+shardedJedis.get("key301"));
System.out.println("獲取key302對應的值:"+shardedJedis.get("key302"));

System.out.println("=============超過有效期鍵值對被刪除=============");
// 設置key的有效期,并存儲數據
System.out.println("新增key303,并指定過期時間為2秒"+shardedJedis.setex("key303", 2, "key303-2second"));
System.out.println("獲取key303對應的值:"+shardedJedis.get("key303"));
try{
Thread.sleep(3000);
}
catch (InterruptedException e){
}
System.out.println("3秒之后,獲取key303對應的值:"+shardedJedis.get("key303"));

System.out.println("=============獲取原值,更新為新值一步完成=============");
System.out.println("key302原值:"+shardedJedis.getSet("key302", "value302-after-getset"));
System.out.println("key302新值:"+shardedJedis.get("key302"));

System.out.println("=============獲取子串=============");
System.out.println("獲取key302對應值中的子串:"+shardedJedis.getrange("key302", 5, 7));
}

 運行結果:

=====================String_1==========================
清空庫中所有數據:OK
=============增=============
已新增的3個鍵值對如下:
value001
value002
value003
=============刪=============
刪除key003鍵值對:1
獲取key003鍵對應的值:null
=============改=============
直接覆蓋key001原來的數據:OK
獲取key001對應的新值:value001-update
在key002原來值后面追加:21
獲取key002對應的新值value002+appendString
=============增,刪,查(多個)=============
一次性新增key201,key202,key203,key204及其對應值:OK
一次性獲取key201,key202,key203,key204各自對應的值:[value201, value202, value203, value204]
一次性刪除key201,key202:2
一次性獲取key201,key202,key203,key204各自對應的值:[null, null, value203, value204]

======================String_2==========================
清空庫中所有數據:OK
=============新增鍵值對時防止覆蓋原先值=============
原先key301不存在時,新增key301:1
原先key302不存在時,新增key302:1
當key302存在時,嘗試新增key302:0
獲取key301對應的值:value301
獲取key302對應的值:value302
=============超過有效期鍵值對被刪除=============
新增key303,并指定過期時間為2秒OK
獲取key303對應的值:key303-2second
3秒之后,獲取key303對應的值:null
=============獲取原值,更新為新值一步完成=============
key302原值:value302
key302新值:value302-after-getset
=============獲取子串=============
獲取key302對應值中的子串:302

 3)List功能private void ListOperate()
{
System.out.println("======================list==========================");
// 清空數據
System.out.println("清空庫中所有數據:"+jedis.flushDB());

System.out.println("=============增=============");
shardedJedis.lpush("stringlists", "vector");
shardedJedis.lpush("stringlists", "ArrayList");
shardedJedis.lpush("stringlists", "vector");
shardedJedis.lpush("stringlists", "vector");
shardedJedis.lpush("stringlists", "LinkedList");
shardedJedis.lpush("stringlists", "MapList");
shardedJedis.lpush("stringlists", "SerialList");
shardedJedis.lpush("stringlists", "HashList");
shardedJedis.lpush("numberlists", "3");
shardedJedis.lpush("numberlists", "1");
shardedJedis.lpush("numberlists", "5");
shardedJedis.lpush("numberlists", "2");
System.out.println("所有元素-stringlists:"+shardedJedis.lrange("stringlists", 0, -1));
System.out.println("所有元素-numberlists:"+shardedJedis.lrange("numberlists", 0, -1));

System.out.println("=============刪=============");
// 刪除列表指定的值 ,第二個參數為刪除的個數(有重復時),后add進去的值先被刪,類似于出棧
System.out.println("成功刪除指定元素個數-stringlists:"+shardedJedis.lrem("stringlists", 2, "vector"));
System.out.println("刪除指定元素之后-stringlists:"+shardedJedis.lrange("stringlists", 0, -1));
// 刪除區間以外的數據
System.out.println("刪除下標0-3區間之外的元素:"+shardedJedis.ltrim("stringlists", 0, 3));
System.out.println("刪除指定區間之外元素后-stringlists:"+shardedJedis.lrange("stringlists", 0, -1));
// 列表元素出棧
System.out.println("出棧元素:"+shardedJedis.lpop("stringlists"));
System.out.println("元素出棧后-stringlists:"+shardedJedis.lrange("stringlists", 0, -1));

System.out.println("=============改=============");
// 修改列表中指定下標的值
shardedJedis.lset("stringlists", 0, "hello list!");
System.out.println("下標為0的值修改后-stringlists:"+shardedJedis.lrange("stringlists", 0, -1));
System.out.println("=============查=============");
// 數組長度
System.out.println("長度-stringlists:"+shardedJedis.llen("stringlists"));
System.out.println("長度-numberlists:"+shardedJedis.llen("numberlists"));
// 排序
/*
* list中存字符串時必須指定參數為alpha,如果不使用SortingParams,而是直接使用sort("list"),
* 會出現"ERR One or more scores can't be converted into double"
*/
SortingParams sortingParameters = new SortingParams();
sortingParameters.alpha();
sortingParameters.limit(0, 3);
System.out.println("返回排序后的結果-stringlists:"+shardedJedis.sort("stringlists",sortingParameters));
System.out.println("返回排序后的結果-numberlists:"+shardedJedis.sort("numberlists"));
// 子串: start為元素下標,end也為元素下標;-1代表倒數一個元素,-2代表倒數第二個元素
System.out.println("子串-第二個開始到結束:"+shardedJedis.lrange("stringlists", 1, -1));
// 獲取列表指定下標的值
System.out.println("獲取下標為2的元素:"+shardedJedis.lindex("stringlists", 2)+"\n");
}

  運行結果:

=====================list==========================
清空庫中所有數據:OK
=============增=============
所有元素-stringlists:[HashList, SerialList, MapList, LinkedList, vector, vector, ArrayList, vector]
所有元素-numberlists:[2, 5, 1, 3]
=============刪=============
成功刪除指定元素個數-stringlists:2
刪除指定元素之后-stringlists:[HashList, SerialList, MapList, LinkedList, ArrayList, vector]
刪除下標0-3區間之外的元素:OK
刪除指定區間之外元素后-stringlists:[HashList, SerialList, MapList, LinkedList]
出棧元素:HashList
元素出棧后-stringlists:[SerialList, MapList, LinkedList]
=============改=============
下標為0的值修改后-stringlists:[hello list!, MapList, LinkedList]
=============查=============
長度-stringlists:3
長度-numberlists:4
返回排序后的結果-stringlists:[LinkedList, MapList, hello list!]
返回排序后的結果-numberlists:[1, 2, 3, 5]
子串-第二個開始到結束:[MapList, LinkedList]
獲取下標為2的元素:LinkedList

 4)Set功能

rivate void SetOperate()
{

System.out.println("======================set==========================");
// 清空數據
System.out.println("清空庫中所有數據:"+jedis.flushDB());

System.out.println("=============增=============");
System.out.println("向sets集合中加入元素element001:"+jedis.sadd("sets", "element001"));
System.out.println("向sets集合中加入元素element002:"+jedis.sadd("sets", "element002"));
System.out.println("向sets集合中加入元素element003:"+jedis.sadd("sets", "element003"));
System.out.println("向sets集合中加入元素element004:"+jedis.sadd("sets", "element004"));
System.out.println("查看sets集合中的所有元素:"+jedis.smembers("sets"));
System.out.println();

System.out.println("=============刪=============");
System.out.println("集合sets中刪除元素element003:"+jedis.srem("sets", "element003"));
System.out.println("查看sets集合中的所有元素:"+jedis.smembers("sets"));
/*System.out.println("sets集合中任意位置的元素出棧:"+jedis.spop("sets"));//注:出棧元素位置居然不定?--無實際意義
System.out.println("查看sets集合中的所有元素:"+jedis.smembers("sets"));*/
System.out.println();

System.out.println("=============改=============");
System.out.println();

System.out.println("=============查=============");
System.out.println("判斷element001是否在集合sets中:"+jedis.sismember("sets", "element001"));
System.out.println("循環查詢獲取sets中的每個元素:");
Set<String> set = jedis.smembers("sets");
Iterator<String> it=set.iterator() ;
while(it.hasNext()){
Object obj=it.next();
System.out.println(obj);
}
System.out.println();

System.out.println("=============集合運算=============");
System.out.println("sets1中添加元素element001:"+jedis.sadd("sets1", "element001"));
System.out.println("sets1中添加元素element002:"+jedis.sadd("sets1", "element002"));
System.out.println("sets1中添加元素element003:"+jedis.sadd("sets1", "element003"));
System.out.println("sets1中添加元素element002:"+jedis.sadd("sets2", "element002"));
System.out.println("sets1中添加元素element003:"+jedis.sadd("sets2", "element003"));
System.out.println("sets1中添加元素element004:"+jedis.sadd("sets2", "element004"));
System.out.println("查看sets1集合中的所有元素:"+jedis.smembers("sets1"));
System.out.println("查看sets2集合中的所有元素:"+jedis.smembers("sets2"));
System.out.println("sets1和sets2交集:"+jedis.sinter("sets1", "sets2"));
System.out.println("sets1和sets2并集:"+jedis.sunion("sets1", "sets2"));
System.out.println("sets1和sets2差集:"+jedis.sdiff("sets1", "sets2"));//差集:set1中有,set2中沒有的元素

}

   運行結果:

======================set==========================
清空庫中所有數據:OK
=============增=============
向sets集合中加入元素element001:1
向sets集合中加入元素element002:1
向sets集合中加入元素element003:1
向sets集合中加入元素element004:1
查看sets集合中的所有元素:[element001, element002, element003, element004]

=============刪=============
集合sets中刪除元素element003:1
查看sets集合中的所有元素:[element001, element002, element004]

=============改=============

=============查=============
判斷element001是否在集合sets中:true
循環查詢獲取sets中的每個元素:
element001
element002
element004

=============集合運算=============
sets1中添加元素element001:1
sets1中添加元素element002:1
sets1中添加元素element003:1
sets1中添加元素element002:1
sets1中添加元素element003:1
sets1中添加元素element004:1
查看sets1集合中的所有元素:[element001, element002, element003]
查看sets2集合中的所有元素:[element002, element003, element004]
sets1和sets2交集:[element002, element003]
sets1和sets2并集:[element001, element002, element003, element004]
sets1和sets2差集:[element001]   

 5)SortedSet功能(有序集合)

rivate void SortedSetOperate()
{
System.out.println("======================zset==========================");
// 清空數據
System.out.println(jedis.flushDB());

System.out.println("=============增=============");
System.out.println("zset中添加元素element001:"+shardedJedis.zadd("zset", 7.0, "element001"));
System.out.println("zset中添加元素element002:"+shardedJedis.zadd("zset", 8.0, "element002"));
System.out.println("zset中添加元素element003:"+shardedJedis.zadd("zset", 2.0, "element003"));
System.out.println("zset中添加元素element004:"+shardedJedis.zadd("zset", 3.0, "element004"));
System.out.println("zset集合中的所有元素:"+shardedJedis.zrange("zset", 0, -1));//按照權重值排序
System.out.println();

System.out.println("=============刪=============");
System.out.println("zset中刪除元素element002:"+shardedJedis.zrem("zset", "element002"));
System.out.println("zset集合中的所有元素:"+shardedJedis.zrange("zset", 0, -1));
System.out.println();

System.out.println("=============改=============");
System.out.println();

System.out.println("=============查=============");
System.out.println("統計zset集合中的元素中個數:"+shardedJedis.zcard("zset"));
System.out.println("統計zset集合中權重某個范圍內(1.0——5.0),元素的個數:"+shardedJedis.zcount("zset", 1.0, 5.0));
System.out.println("查看zset集合中element004的權重:"+shardedJedis.zscore("zset", "element004"));
System.out.println("查看下標1到2范圍內的元素值:"+shardedJedis.zrange("zset", 1, 2));

}

 運行結果:

======================zset==========================
OK
=============增=============
zset中添加元素element001:1
zset中添加元素element002:1
zset中添加元素element003:1
zset中添加元素element004:1
zset集合中的所有元素:[element003, element004, element001, element002]

=============刪=============
zset中刪除元素element002:1
zset集合中的所有元素:[element003, element004, element001]

=============改=============

=============查=============
統計zset集合中的元素中個數:3
統計zset集合中權重某個范圍內(1.0——5.0),元素的個數:2
查看zset集合中element004的權重:3.0
查看下標1到2范圍內的元素值:[element004, element001]

 6)Hash功能

rivate void HashOperate()
{
System.out.println("======================hash==========================");
//清空數據
System.out.println(jedis.flushDB());

System.out.println("=============增=============");
System.out.println("hashs中添加key001和value001鍵值對:"+shardedJedis.hset("hashs", "key001", "value001"));
System.out.println("hashs中添加key002和value002鍵值對:"+shardedJedis.hset("hashs", "key002", "value002"));
System.out.println("hashs中添加key003和value003鍵值對:"+shardedJedis.hset("hashs", "key003", "value003"));
System.out.println("新增key004和4的整型鍵值對:"+shardedJedis.hincrBy("hashs", "key004", 4l));
System.out.println("hashs中的所有值:"+shardedJedis.hvals("hashs"));
System.out.println();

System.out.println("=============刪=============");
System.out.println("hashs中刪除key002鍵值對:"+shardedJedis.hdel("hashs", "key002"));
System.out.println("hashs中的所有值:"+shardedJedis.hvals("hashs"));
System.out.println();

System.out.println("=============改=============");
System.out.println("key004整型鍵值的值增加100:"+shardedJedis.hincrBy("hashs", "key004", 100l));
System.out.println("hashs中的所有值:"+shardedJedis.hvals("hashs"));
System.out.println();

System.out.println("=============查=============");
System.out.println("判斷key003是否存在:"+shardedJedis.hexists("hashs", "key003"));
System.out.println("獲取key004對應的值:"+shardedJedis.hget("hashs", "key004"));
System.out.println("批量獲取key001和key003對應的值:"+shardedJedis.hmget("hashs", "key001", "key003"));
System.out.println("獲取hashs中所有的key:"+shardedJedis.hkeys("hashs"));
System.out.println("獲取hashs中所有的value:"+shardedJedis.hvals("hashs"));
System.out.println();

}

  運行結果:

======================hash==========================
OK
=============增=============
hashs中添加key001和value001鍵值對:1
hashs中添加key002和value002鍵值對:1
hashs中添加key003和value003鍵值對:1
新增key004和4的整型鍵值對:4
hashs中的所有值:[value001, value002, value003, 4]

=============刪=============
hashs中刪除key002鍵值對:1
hashs中的所有值:[value001, value003, 4]

=============改=============
key004整型鍵值的值增加100:104
hashs中的所有值:[value001, value003, 104]

=============查=============
判斷key003是否存在:true
獲取key004對應的值:104
批量獲取key001和key003對應的值:[value001, value003]
獲取hashs中所有的key:[key004, key003, key001]
獲取hashs中所有的value:[value001, value003, 104]


三、常用命令
?

?? 1)連接操作命令quit:關閉連接(connection)auth:簡單密碼認證help cmd: 查看cmd幫助,例如:help quit2)持久化save:將數據同步保存到磁盤bgsave:將數據異步保存到磁盤lastsave:返回上次成功將數據保存到磁盤的Unix時戳shundown:將數據同步保存到磁盤,然后關閉服務3)遠程服務控制info:提供服務器的信息和統計monitor:實時轉儲收到的請求slaveof:改變復制策略設置config:在運行時配置Redis服務器4)對value操作的命令exists(key):確認一個key是否存在del(key):刪除一個keytype(key):返回值的類型keys(pattern):返回滿足給定pattern的所有keyrandomkey:隨機返回key空間的一個keyrename(oldname, newname):重命名keydbsize:返回當前數據庫中key的數目expire:設定一個key的活動時間(s)ttl:獲得一個key的活動時間select(index):按索引查詢move(key, dbindex):移動當前數據庫中的key到dbindex數據庫flushdb:刪除當前選擇數據庫中的所有keyflushall:刪除所有數據庫中的所有key5)Stringset(key, value):給數據庫中名稱為key的string賦予值valueget(key):返回數據庫中名稱為key的string的valuegetset(key, value):給名稱為key的string賦予上一次的valuemget(key1, key2,…, key N):返回庫中多個string的valuesetnx(key, value):添加string,名稱為key,值為valuesetex(key, time, value):向庫中添加string,設定過期時間timemset(key N, value N):批量設置多個string的值msetnx(key N, value N):如果所有名稱為key i的string都不存在incr(key):名稱為key的string增1操作incrby(key, integer):名稱為key的string增加integerdecr(key):名稱為key的string減1操作decrby(key, integer):名稱為key的string減少integerappend(key, value):名稱為key的string的值附加valuesubstr(key, start, end):返回名稱為key的string的value的子串6)List?rpush(key, value):在名稱為key的list尾添加一個值為value的元素lpush(key, value):在名稱為key的list頭添加一個值為value的 元素llen(key):返回名稱為key的list的長度lrange(key, start, end):返回名稱為key的list中start至end之間的元素ltrim(key, start, end):截取名稱為key的listlindex(key, index):返回名稱為key的list中index位置的元素lset(key, index, value):給名稱為key的list中index位置的元素賦值lrem(key, count, value):刪除count個key的list中值為value的元素lpop(key):返回并刪除名稱為key的list中的首元素rpop(key):返回并刪除名稱為key的list中的尾元素blpop(key1, key2,… key N, timeout):lpop命令的block版本。brpop(key1, key2,… key N, timeout):rpop的block版本。rpoplpush(srckey, dstkey):返回并刪除名稱為srckey的list的尾元素,并將該元素添加到名稱為dstkey的list的頭部7)Setsadd(key, member):向名稱為key的set中添加元素membersrem(key, member) :刪除名稱為key的set中的元素memberspop(key) :隨機返回并刪除名稱為key的set中一個元素smove(srckey, dstkey, member) :移到集合元素scard(key) :返回名稱為key的set的基數sismember(key, member) :member是否是名稱為key的set的元素sinter(key1, key2,…key N) :求交集sinterstore(dstkey, (keys)) :求交集并將交集保存到dstkey的集合sunion(key1, (keys)) :求并集sunionstore(dstkey, (keys)) :求并集并將并集保存到dstkey的集合sdiff(key1, (keys)) :求差集sdiffstore(dstkey, (keys)) :求差集并將差集保存到dstkey的集合smembers(key) :返回名稱為key的set的所有元素srandmember(key) :隨機返回名稱為key的set的一個元素8)Hashhset(key, field, value):向名稱為key的hash中添加元素fieldhget(key, field):返回名稱為key的hash中field對應的valuehmget(key, (fields)):返回名稱為key的hash中field i對應的valuehmset(key, (fields)):向名稱為key的hash中添加元素field?hincrby(key, field, integer):將名稱為key的hash中field的value增加integerhexists(key, field):名稱為key的hash中是否存在鍵為field的域hdel(key, field):刪除名稱為key的hash中鍵為field的域hlen(key):返回名稱為key的hash中元素個數hkeys(key):返回名稱為key的hash中所有鍵hvals(key):返回名稱為key的hash中所有鍵對應的valuehgetall(key):返回名稱為key的hash中所有的鍵(field)及其對應的value


  參考:http://blog.csdn.net/ithomer/article/details/9213185

? ? ? ?轉自:http://www.cnblogs.com/edisonfeng/p/3571870.html

總結

以上是生活随笔為你收集整理的java 对 redis 的基本操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

黄色成人影视 | 欧美亚洲专区 | 亚洲高清色综合 | 人人插人人艹 | 成年人在线电影 | 午夜精品久久久久久久久久久 | 高清中文字幕av | 五月天堂色| 日韩免费高清 | 在线观看播放av | 久久精视频 | 亚洲精品一区二区三区四区高清 | 国产丝袜高跟 | 亚洲精品午夜一区人人爽 | 6080yy午夜一二三区久久 | 国产资源免费 | 97免费在线观看视频 | 精品资源在线 | 免费视频久久久久久久 | 亚洲成人黄色在线 | 午夜精品一二区 | 91免费版在线 | 99热这里只有精品免费 | 97超碰人人在线 | 成人免费一区二区三区在线观看 | 久草在线免费在线观看 | 国产网站色 | 五月婷婷丁香在线观看 | 婷婷综合亚洲 | 九九热精品视频在线播放 | 综合天天 | 伊人成人精品 | 91精品在线看 | 人人澡人人添人人爽一区二区 | 黄色亚洲精品 | 久久伊人精品一区二区三区 | 中文字幕在线观看亚洲 | 日韩一二三在线 | 激情片av | 亚洲综合视频在线 | 亚洲视频,欧洲视频 | 黄色大全免费网站 | 国产成人久久精品 | 一 级 黄 色 片免费看的 | 伊人宗合网 | 久久精品牌麻豆国产大山 | 国产精品 中文在线 | 欧美污在线观看 | 国产亚洲精品xxoo | 久久免费av | 日日爽天天 | 欧美精品久久久久久久久老牛影院 | 久久狠狠一本精品综合网 | 国产成人一区二区三区电影 | www.婷婷色 | 日韩三级久久 | 91成年人网站 | 96精品高清视频在线观看软件特色 | 久久国产a | 玖草影院 | 日本特黄一级 | 日本精品一区二区三区在线播放视频 | 中文字幕久久网 | 激情欧美一区二区三区免费看 | 激情五月在线观看 | 69久久99精品久久久久婷婷 | 最新日韩在线观看视频 | 日韩最新理论电影 | 99精品视频在线看 | 欧美做受高潮电影o | 国产91精品一区二区 | 久久亚洲私人国产精品va | av中文字幕在线播放 | 亚洲va天堂va欧美ⅴa在线 | 国产亚洲永久域名 | 久久精品欧美 | 国产精品入口传媒 | 又污又黄的网站 | 国产色视频网站2 | 少妇搡bbbb搡bbb搡忠贞 | 免费久久久久久久 | 热re99久久精品国产66热 | 国产精品久久久久久爽爽爽 | 久久国产福利 | 91激情视频在线观看 | 在线激情影院一区 | 欧美日韩精品在线免费观看 | 99在线播放 | 国产手机在线观看 | 日日夜夜天天人人 | 国产成人一区二区三区在线观看 | 国产色小视频 | 国产精品久久99综合免费观看尤物 | 成人免费观看视频大全 | 98久9在线 | 免费 | 免费观看版 | 天天天天色综合 | 激情视频一区二区 | 久久久一本精品99久久精品66 | a资源在线 | 日韩免费电影一区二区三区 | 免费日韩av片 | 亚洲人成网站精品片在线观看 | 超碰在线94 | 91精品网站在线观看 | 中文字幕一区二区在线播放 | 激情久久久久久久久久久久久久久久 | 久久99精品国产99久久6尤 | 国产精品一区二区av日韩在线 | 99在线观看视频网站 | 日韩在线免费观看视频 | av在线收看| 夜夜视频欧洲 | www.色com| www欧美日韩| 麻豆传媒视频在线播放 | 91精品啪在线观看国产81旧版 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久精品综合一区 | 日韩免费视频 | 国产精品一区二区你懂的 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 国产精品一区二区三区在线看 | 99精品免费久久久久久日本 | 深爱激情亚洲 | 天天se天天cao天天干 | 久久久久久国产精品 | 精品人妖videos欧美人妖 | 国产精品99在线播放 | 五月天激情综合网 | www久久国产 | a天堂免费| 久99精品| 日韩激情av在线 | 国产在线看 | 国产美女精品视频 | 日韩欧美在线中文字幕 | 天天干天天操天天射 | 四虎影视成人永久免费观看视频 | 日女人电影 | av色一区| 久久亚洲免费 | 91亚洲精品国偷拍 | 国产成人一区二区三区 | 美女网站在线免费观看 | 91在线亚洲 | 美女网站在线 | 成人av资源在线 | 一级片免费观看 | 99这里只有精品视频 | 深夜免费福利 | 久久女同性恋中文字幕 | 国产精品毛片网 | 亚洲天堂网在线视频观看 | 亚洲人视频在线 | 色婷婷视频在线观看 | 欧美一级小视频 | 日韩在线资源 | 国产黄在线免费观看 | 蜜桃av久久久亚洲精品 | 午夜精品av | 一区二区三区精品在线 | 91精品久久久久久 | 色综合久久悠悠 | 日日成人网| 日韩免费不卡视频 | 在线看片一区 | 亚洲午夜激情网 | 成人av一区二区在线观看 | 97超级碰碰碰碰久久久久 | 久久国色夜色精品国产 | 狠狠干 狠狠操 | 九九热在线视频 | 国产色拍| 99视频免费在线观看 | 激情视频亚洲 | 成人av网站在线播放 | 在线视频久久 | 日韩在线观看网站 | 蜜臀久久99精品久久久无需会员 | 中文在线 | 久久看看| 久久久久久久久久久免费av | 国产精品久久久久久久av电影 | 色欲综合视频天天天 | 色婷婷亚洲婷婷 | 中文字幕中文中文字幕 | 久草综合视频 | 国产精品丝袜久久久久久久不卡 | 久久精品国产第一区二区三区 | 爱情影院aqdy鲁丝片二区 | 91九色综合 | 久热色超碰 | 亚洲人毛片 | 成人精品影视 | 欧美黄色特级片 | 日日噜噜噜噜夜夜爽亚洲精品 | 日韩在线视频在线观看 | 91麻豆精品国产自产在线 | 亚洲精品系列 | 国产 日韩 在线 亚洲 字幕 中文 | 国产精品久久久久久久久久久久冷 | 在线免费成人 | 午夜精品一区二区三区视频免费看 | 四虎小视频 | 久久免费视频这里只有精品 | 丝袜美腿在线视频 | 国产黄大片在线观看 | 亚州国产视频 | 91麻豆精品国产91久久久久久久久 | 久久成人综合视频 | 婷婷天天色 | 成全在线视频免费观看 | 在线观看av小说 | 日韩中文字幕免费视频 | 一区二区三区在线观看中文字幕 | 亚洲aⅴ免费在线观看 | 狠狠操影视 | 91av在线播放视频 | 色诱亚洲精品久久久久久 | 精品视频中文字幕 | 久久一区二区三区日韩 | 欧美日本在线观看视频 | 免费一区在线 | 美女搞黄国产视频网站 | 亚州精品成人 | 欧美性生活久久 | 玖玖玖精品 | sm免费xx网站| 久久久久五月天 | 国产视频在线观看免费 | 国产人成免费视频 | 国产免费av一区二区三区 | 亚洲电影黄色 | 国产一区二区不卡在线 | 国色天香av | 在线观看成人网 | 一区二区三区精品在线视频 | 亚洲精品在线视频观看 | 国产精品青草综合久久久久99 | 激情深爱.com| 91久久国产自产拍夜夜嗨 | 99精品亚洲 | 四虎国产 | 99久久精品国产亚洲 | 婷婷久久五月天 | 国产一区成人 | 国产精品麻豆99久久久久久 | 日日干美女 | 在线视频精品 | 中文字幕免费高清 | 97伊人网| 日韩一区视频在线 | 日韩动漫免费观看高清完整版在线观看 | 欧美老人xxxx18 | 成人av视屏| av在线播放亚洲 | 久久精品看 | 黄色网免费 | 精品免费国产一区二区三区四区 | 97免费 | 久久免费精彩视频 | 福利精品在线 | 天天天干夜夜夜操 | 日韩特级黄色片 | 日韩激情中文字幕 | 奇米影视四色8888 | 国精产品999国精产品视频 | 欧美日韩高清在线 | 中文在线a√在线 | 99国产高清 | 91亚洲精品久久久蜜桃网站 | 日韩三区在线 | 韩国av一区二区 | 日日夜精品 | 操操综合 | 精品国产欧美一区二区三区不卡 | 中文字幕在线观看视频一区二区三区 | 亚洲一级特黄 | 嫩小bbbb摸bbb摸bbb | 日韩激情av在线 | 欧美精品亚洲二区 | 中文字幕人成人 | 一区二区三区 亚洲 | 人人爽网站| 亚洲五月婷 | 狠狠色丁香婷婷综合视频 | 免费看的国产视频网站 | 国产精品成人久久 | 99色婷婷| 中文字幕免费观看视频 | 婷婷激情5月天 | 黄色精品一区 | 色美女在线 | 人人爽人人爽人人爽人人爽 | 黄色软件视频网站 | 97国产大学生情侣酒店的特点 | 奇米7777狠狠狠琪琪视频 | 亚洲欧美日韩精品久久久 | 黄色aaa毛片 | 国产高清在线永久 | 91精品国产乱码久久桃 | 97av色| 黄色国产成人 | 婷婷视频 | 婷婷色网站| 五月婷婷中文网 | 国产免费人人看 | 国产又粗又硬又爽视频 | 日韩av手机在线看 | 国产 在线 日韩 | 欧美成年黄网站色视频 | 国产第页 | 国产视频在线观看一区 | 91视频免费看 | 亚洲成人网av | 国产精品一区二区三区电影 | 免费看搞黄视频网站 | 日韩av中文字幕在线 | 国产香蕉97碰碰久久人人 | 亚洲国产精品一区二区尤物区 | 碰超人人| 国产区精品 | 国产中文字幕视频在线观看 | 福利久久| 国产精品99久久久久久小说 | 国产精品成人久久久 | 一区二区三区在线观看中文字幕 | 视频91| 一区二区视频免费在线观看 | 精品国产视频在线 | 亚洲精品久久久蜜臀下载官网 | 久久1区 | 成人永久在线 | 久久精品久久99 | 麻豆视频免费在线播放 | 丁香婷婷久久 | 美女黄频在线观看 | 欧美日韩视频网站 | 国产欧美日韩视频 | 二区精品视频 | 在线三级播放 | 99视频| 国产成人99av超碰超爽 | 免费看av在线 | 国产精品99久久久久久人免费 | 夜夜嗨av色一区二区不卡 | 久久综合中文色婷婷 | 婷婷丁香社区 | 久久伊人爱 | 日韩精品视频第一页 | 97狠狠干 | 91精品国产综合久久婷婷香蕉 | 久久99国产精品二区护士 | 免费看国产一级片 | 成人免费视频网 | 91久久久久久久一区二区 | 91一区啪爱嗯打偷拍欧美 | 波多野结衣视频一区 | 欧美性超爽| 操操操日日日 | 婷婷六月中文字幕 | 中文av在线天堂 | 色播99 | 国产无套精品久久久久久 | 9999毛片| 日本精品视频免费观看 | 日本视频高清 | 日韩精品视频在线免费观看 | 免费福利视频网 | 丁香婷婷激情国产高清秒播 | 久草在线观看资源 | 视频高清| 91网免费看 | 天天激情综合网 | 美女视频黄免费的 | 国产一区二区在线免费 | 国产99在线播放 | 精品久久久久久久久中文字幕 | 欧美精品久久久久久久亚洲调教 | 亚洲精品大片www | 色偷偷男人的天堂av | 91视频午夜 | 人人狠狠综合久久亚洲婷 | 国产中文字幕一区二区 | 日韩精品中文字幕在线 | 999在线视频 | 久久精品网站视频 | 亚洲黄色免费观看 | 人人盈棋牌 | 天天射天天干天天 | 亚洲综合成人专区片 | 国产亚洲人 | 国产不卡精品 | 成人免费观看av | 在线v片免费观看视频 | 9999亚洲 | 中文字幕精品www乱入免费视频 | 亚洲精品视频在线 | 天天操夜操视频 | 91欧美视频网站 | 日韩精品在线观看av | 日本精品久久久久久 | 色噜噜日韩精品一区二区三区视频 | 激情综合色综合久久 | 日韩毛片在线播放 | 国产成人精品综合久久久 | 一区二区三区在线免费观看视频 | 在线а√天堂中文官网 | 成av人电影 | 91在线小视频 | 国产精品日韩在线播放 | 欧美精品在线一区 | 黄色免费网站下载 | 91精品久久久久久综合乱菊 | 一本一道波多野毛片中文在线 | av激情五月| 日本精品免费看 | 91黄视频在线 | 五月综合婷 | 在线影视 一区 二区 三区 | 91最新网址在线观看 | 国产69精品久久久久9999apgf | 成人av在线直播 | 欧美一区二区伦理片 | 伊人www22综合色 | 亚洲第一久久久 | 丁香花中文字幕 | 久久99久久99精品免视看婷婷 | 久久久久久久久久久影院 | 99免在线观看免费视频高清 | 亚洲精品视频二区 | 97精品在线观看 | 亚洲四虎在线 | 91高清在线看 | 美女久久99 | 人人揉人人揉人人揉人人揉97 | 日韩黄视频 | 精品一区二区久久久久久久网站 | 婷婷综合五月天 | 麻豆精品传媒视频 | 91综合视频在线观看 | 欧美国产日韩一区 | 91人人澡人人爽人人精品 | 国产中文字幕在线看 | 91精品麻豆 | 亚洲精品资源 | 日韩国产高清在线 | 最新精品国产 | 欧美一级久久久久 | 黄色在线网站噜噜噜 | 天天操夜夜做 | 亚洲精品一区二区在线观看 | 四虎影视成人精品国库在线观看 | 亚洲mv大片欧洲mv大片免费 | 欧美激情综合五月色丁香 | 日韩高清免费观看 | 在线a亚洲视频播放在线观看 | 免费看污黄网站 | 午夜婷婷在线观看 | 四虎永久视频 | 欧美激情第一区 | 亚洲女欲精品久久久久久久18 | 欧美成a人片在线观看久 | 一级电影免费在线观看 | 中国一级片视频 | 亚洲午夜久久久久久久久电影网 | 日本中文字幕在线视频 | 在线观看日本高清mv视频 | 人交video另类hd | www.午夜色.com | 欧美少妇18p| 天天综合亚洲 | 麻豆传媒视频在线免费观看 | 91在线中文 | 在线免费黄色av | 五月天色综合 | 午夜精品一区二区三区在线视频 | 国产色在线,com | 毛片1000部免费看 | zzijzzij日本成熟少妇 | 国产精品网址在线观看 | 久99久精品 | 天天爽天天爽夜夜爽 | 日韩三级在线观看 | 草樱av | 日日操网站 | 成人在线网站观看 | 91精品资源 | 日本特黄一级 | 免费看黄在线网站 | 激情www| 欧美aa级| 国产老太婆免费交性大片 | 黄色免费观看视频 | 国产精品1区2区3区 久久免费视频7 | 久草视频中文在线 | 精品一区二区三区香蕉蜜桃 | 婷婷.com| 九九电影在线 | 国产视频在 | 91精品国产一区 | 99国产在线 | 国产a国产a国产a | 天天干天天天天 | 国产黑丝一区二区三区 | 久久成 | 天天干夜夜爱 | 久久怡红院| 日日夜夜精品视频天天综合网 | 国产精品9区 | 久久艹在线 | 日韩欧美一区视频 | 亚洲永久精品一区 | 91福利视频一区 | 免费色av | 色干综合 | 中文字幕在线观看播放 | 色多多污污 | 国产麻豆精品一区 | 激情综合网五月 | av免费网站| 超碰97人 | 成人av资源网站 | 中文字幕日本电影 | 97超碰色偷偷 | 成人黄色在线电影 | 91精品婷婷国产综合久久蝌蚪 | 国产视频一区二区在线播放 | 欧美老人xxxx18 | 亚洲影院国产 | 青青草国产精品视频 | 日韩av一区二区在线播放 | 区一区二区三在线观看 | 欧美性色综合网站 | 成人国产精品入口 | 成人日韩av | 欧美日韩1区 | 日韩一级精品 | 亚州国产精品视频 | 国内精品久久久久影院一蜜桃 | 亚洲电影黄色 | 能在线观看的日韩av | 成年人免费电影 | 日韩av视屏在线观看 | 黄色的网站免费看 | 中文在线天堂资源 | 国产一区二区三区免费观看视频 | 999成人国产 | 欧美在线aaa| 人人藻人人澡人人爽 | 黄色一级影院 | 日韩电影一区二区在线 | 亚洲国产大片 | av黄免费看 | 国内精品视频久久 | 中文字幕在线日本 | 亚洲视频免费在线看 | 国产精品一区免费在线观看 | 91精品国产亚洲 | 国产第页 | 成人av影视在线 | 久久国内免费视频 | 日本精品中文字幕 | 国产精品久久久久久久久久免费 | 国产九九热视频 | 中文字幕第 | 日本精品视频在线 | 日韩高清 一区 | www.久热| 午夜视频色| 久久这里只有精品久久 | 在线亚洲免费视频 | 国产精品乱码久久久久久1区2区 | 欧美另类交在线观看 | 免费看搞黄视频网站 | 伊人伊成久久人综合网站 | 国产视频美女 | 黄色的视频 | 27xxoo无遮挡动态视频 | 免费av成人在线 | 干天天 | 人人插人人舔 | 免费看黄的视频 | 99理论片| 午夜精品久久久久久久久久 | 99热最新网址 | 亚洲综合小说电影qvod | 久艹在线免费观看 | 五月黄色 | 亚洲美女精品区人人人人 | 亚洲视频一级 | 久久五月天综合 | 丁五月婷婷 | 亚洲成av人片在线观看无 | av电影免费观看 | 欧美性色黄大片在线观看 | 国产在线更新 | 国产午夜精品一区二区三区欧美 | 亚洲综合色网站 | 亚洲午夜久久久影院 | 久久精品一区二区三区中文字幕 | 婷婷综合成人 | 最新中文字幕在线播放 | 国产视频久久 | 久久精品国产第一区二区三区 | 在线一区观看 | 亚洲人片在线观看 | 亚洲精品 在线视频 | 欧美一级电影片 | 国产免费又粗又猛又爽 | 天天爽综合网 | 国产精品久久久久一区二区国产 | 国产一区二区免费看 | 五月天综合激情网 | 国产一区二区三区视频在线 | 天天操天天怕 | 亚洲精品在线免费 | 成人小电影在线看 | 国产一级免费片 | 亚色视频在线观看 | 色婷婷国产在线 | 中文一区在线观看 | 99视频在线免费播放 | 精品久久久成人 | 日本久久久久久久久久久 | 久久精品韩国 | 日韩久久精品一区二区三区 | 五月天婷婷免费视频 | 久久在线精品视频 | 丝袜美腿在线 | 婷婷五月在线视频 | 在线91色 | 日p视频在线观看 | 色婷婷久久 | 国产精品久久久久四虎 | 成人一区二区三区中文字幕 | 欧美亚洲成人免费 | 国产麻豆精品免费视频 | 在线视频一二三 | 久久久精品久久日韩一区综合 | www.夜色.com | 国产日韩欧美视频 | 激情五月播播久久久精品 | 九九热只有这里有精品 | aa级黄色大片 | 一本一本久久a久久精品综合小说 | 中文字幕你懂的 | 麻豆系列在线观看 | 色五月情| 久久人人爽爽人人爽人人片av | 黄色av一区 | 欧美狠狠色 | 四虎最新入口 | 高潮久久久 | 久久美女视频 | 色偷偷男人的天堂av | 九九久久影院 | 在线观看久久久久久 | 日韩欧美高清视频在线观看 | 亚洲午夜久久久久 | a天堂最新版中文在线地址 久久99久久精品国产 | 午夜久久影院 | 91在线看视频免费 | 日本视频久久久 | 欧美亚洲国产日韩 | 日韩中文字幕免费视频 | 日韩在线视频免费观看 | 婷婷久草| 九精品 | 欧美 日韩 国产 成人 在线 | 香蕉91视频 | 亚洲综合成人在线 | 欧美一区二区在线刺激视频 | 青草视频在线免费 | 91你懂的| 黄网站色欧美视频 | 国产精品高潮呻吟久久av无 | 99免费在线视频观看 | 激情综合六月 | 一级一片免费视频 | 一区二区三区精品在线视频 | 久久99久久99精品中文字幕 | 久久久999免费视频 日韩网站在线 | 96国产精品视频 | 天天操天天干天天 | 国产精品18久久久久久首页狼 | 天天色天天操综合网 | 操综合 | 精品在线免费视频 | www.com黄色| 国产精品美女久久久久久久 | 久久这里有精品 | 久久综合九色欧美综合狠狠 | 在线亚洲成人 | 国产亚洲一区二区在线观看 | 插久久| 在线免费观看一区二区三区 | 国产精品久久久久久久久久三级 | 东方av在线免费观看 | 亚洲午夜久久久久 | 欧美贵妇性狂欢 | 97在线观| h视频在线看| 制服丝袜在线91 | 尤物一区二区三区 | 免费在线观看的av网站 | 色久av| 成人精品国产免费网站 | 久久午夜精品影院一区 | 久久爽久久爽久久av东京爽 | 香蕉视频在线免费 | 91日韩精品一区 | 久久久久电影网站 | 91视频一8mav| 97天天干| 国产精品国产亚洲精品看不卡 | 蜜臀久久99静品久久久久久 | 狠狠久久综合 | 久久手机精品视频 | 国产一级免费视频 | 欧美在线视频一区二区三区 | 日韩三级视频在线观看 | 91成人免费在线 | 国产精品视频99 | 91.精品高清在线观看 | 国产视频在线观看一区 | 精品国产伦一区二区三区观看方式 | 国产精品久久久久久久久久不蜜月 | 国产精品专区h在线观看 | 一区二区精品在线 | 青草草在线视频 | 综合色中色 | 91av视频在线免费观看 | 久草影视在线 | 国产高清视频免费观看 | 天天干,天天干 | 久久久久久中文字幕 | 中文综合在线 | 欧美最猛性xxxxx(亚洲精品) | 日本性xxx | 91精品对白一区国产伦 | 美女又爽又黄 | 国产原创av片 | 国产美女网站在线观看 | a在线观看免费视频 | 日本久热 | 国产精品久久综合 | 丁香六月婷婷开心 | 日韩精品一区二区在线观看视频 | 97超级碰碰碰视频在线观看 | 久久中文欧美 | 欧美 日韩 国产 中文字幕 | 天天操操操操操 | 欧美午夜a | 国产三级视频 | 日韩一区在线免费观看 | 亚洲日本va在线观看 | 人人射av | 天天干天天色2020 | 欧美国产亚洲精品久久久8v | 欧美性成人| 国产精品一区二区美女视频免费看 | 狠狠躁日日躁 | 高清国产午夜精品久久久久久 | 亚洲午夜大片 | 中文字幕在线播放日韩 | 国产精品视频地址 | 91看国产 | 香蕉影院在线 | av电影在线免费 | 国产精品18videosex性欧美 | 91成人天堂久久成人 | 91秒拍国产福利一区 | 免费观看福利视频 | 日韩一区二区三区免费视频 | 黄色软件大全网站 | 欧美 另类 交| 色婷婷成人 | www.久草视频 | 日韩av片无码一区二区不卡电影 | 国产精品第二十页 | 99精品偷拍视频一区二区三区 | 蜜桃视频在线观看一区 | 欧洲一区二区在线观看 | 青青网视频 | 久久热首页 | 中文字幕在线资源 | 中文字幕一区在线观看视频 | 国产伦精品一区二区三区照片91 | 日韩av免费网站 | 天天干,天天射,天天操,天天摸 | 精品亚洲欧美一区 | 国产最新视频在线观看 | 欧美性生交大片免网 | 国产欧美综合在线观看 | 人人舔人人爱 | av在线进入| 日本福利视频在线 | 精品国产区| 国产精品国产自产拍高清av | 夜夜爽88888免费视频4848 | 一级黄色电影网站 | 亚洲理论电影 | 久久久久久久久久久久99 | 亚洲2019精品 | 最近久乱中文字幕 | 91色网址 | www..com毛片 | 久久国产品| 超碰在线观看97 | 大片网站久久 | 久久理论电影网 | 亚洲婷婷丁香 | 蜜桃av人人夜夜澡人人爽 | 亚洲自拍自偷 | 国产黄在线看 | 国产在线高清视频 | 中文在线字幕免费观 | 久久精品视频网 | 成人黄色小说在线观看 | 国产精品一区二区三区在线免费观看 | 91精品国产综合久久婷婷香蕉 | 黄污网站在线观看 | 久久久久久久久综合 | 中文视频一区二区 | 日韩偷拍精品 | 四虎8848免费高清在线观看 | 高清不卡一区二区在线 | 午夜精品久久久久久久99水蜜桃 | 国产色区 | 亚洲va韩国va欧美va精四季 | 国产v欧美| 精品亚洲免费 | 国产糖心vlog在线观看 | 人人澡人人爽欧一区 | 久久精品视频免费 | 最近中文字幕免费av | 国产一级精品在线观看 | 国产精品免费视频观看 | 欧美 日韩 性 | 亚洲高清视频在线观看免费 | 高潮毛片无遮挡高清免费 | 免费精品在线 | 国产成人精品免高潮在线观看 | 伊人午夜 | 久久99国产精品视频 | 日本精品视频一区 | 中文字幕 国产 一区 | 国产成人99av超碰超爽 | 欧美视频在线二区 | 日韩一级成人av | 在线观看免费91 | 精品国产乱码久久久久久三级人 | 手机在线欧美 | 中文字幕av在线免费 | 免费看短 | 99视频在线观看免费 | 日色在线视频 | 97免费公开视频 | 97成人超碰 | 亚洲另类人人澡 | 综合在线观看色 | 99riav1国产精品视频 | 一区二区三区四区五区在线视频 | 国产综合久久 | 在线视频精品 | 亚洲精品白浆高清久久久久久 | 亚洲成人精品久久久 | 国产精品国产三级国产不产一地 | 四虎成人精品永久免费av | 99久免费精品视频在线观看 | 亚洲视频在线观看网站 | 国产精品一区二区三区久久 | 久久久久一区二区三区 | 综合久久一本 | 国产精品激情偷乱一区二区∴ | 精品福利在线观看 | 999久久久久久 | 国产精品一级在线 | 一区二区三区免费在线观看 | 国产精品一级在线 | 免费黄色在线播放 | 人人爽人人爽 | 国产一二三区av | 精品女同一区二区三区在线观看 | 久久久久久久久影视 | 亚洲精品五月 | 九九热只有这里有精品 | avove黑丝 | 麻豆一级视频 | 欧美欧美| 婷婷在线免费 | 五月天综合激情网 | 国产精品网在线观看 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 美女久久久久久久久久久 | 黄色在线观看网站 | 午夜av免费观看 | 久草热久草视频 | 国产精品毛片久久久久久 | 久久激情视频免费观看 | 中文字幕在线电影 | 国产一区二区在线观看视频 | 五月在线视频 | 婷婷色av| 久久综合久久综合这里只有精品 | 久久精品国产精品亚洲 | 欧美成人基地 | 免费欧美精品 | 日韩三级视频在线观看 | 国产精品mm | 精品免费观看视频 | 日精品| 怡红院成人在线 | 中文字幕在线播放第一页 | 久久一区二区三区超碰国产精品 | 日本九九视频 | 日本中文字幕在线观看 | 婷婷精品国产一区二区三区日韩 | 日韩网站在线免费观看 | 99久久精品国产观看 | 日韩成人不卡 | 国产精品久久久久久久久大全 | 成人试看120秒 | www.成人精品 | 国产精品乱码久久久 | 黄色亚洲精品 | 国产精品久久久久久影院 | 欧美另类xxx| 91亚洲精品久久久蜜桃网站 | 久久久久在线 | 久久久久福利视频 | 日韩亚洲国产中文字幕 | 丁香婷婷激情网 | 黄色美女免费网站 | 999成人国产 | 五月天激情视频在线观看 | 国内精品一区二区 | 欧美伦理电影一区二区 | 精品视频区 | 精品视频在线播放 | 香蕉在线视频观看 | 探花视频在线观看免费版 | 亚洲精品国产麻豆 | 中文字幕人成乱码在线观看 | 亚洲 欧美 国产 va在线影院 | 91成人免费 | 久草视频在线资源 | 久草在线费播放视频 | 处女av在线 | 免费激情在线电影 | 欧美日韩一区二区三区视频 | 久草a在线| 日韩免费播放 | 日本最新一区二区三区 | 精品主播网红福利资源观看 | 男女视频久久久 | 天天操夜夜叫 | 国产精品国产三级国产aⅴ入口 | 香蕉视频免费在线播放 | 欧美精品久久久久性色 | 高清免费在线视频 | 国产成人精品一区二三区 | 国产亚洲精品久久久久久无几年桃 | 丝袜美腿一区 | 国产亚洲字幕 | 欧洲色综合 | 久久狠狠一本精品综合网 | 蜜桃视频日韩 | 人成在线免费视频 | 成人av片在线观看 | 久久一区二区三区超碰国产精品 | 91精品国产乱码在线观看 | 日韩在线观看第一页 | 欧洲亚洲国产视频 | 亚洲精品合集 | 97碰在线视频 | 黄视频色网站 | 国产韩国日本高清视频 | 国内免费久久久久久久久久久 | 亚洲人成人99网站 | 不卡的av电影在线观看 | 欧美精品在线一区二区 | 在线亚洲激情 | 亚州免费视频 | 在线a亚洲视频播放在线观看 | 六月丁香色婷婷 | 国产精品久久久久久久午夜片 | 亚洲精品乱码久久久久久写真 | 亚洲激情精品 | 国产玖玖在线 | 成人av影视在线 | 日韩欧美综合在线视频 | 国产精品18久久久久久首页狼 | 999成人网| 国产区精品 | 国产高清不卡 |