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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

(入门SpringBoot)SpringBoot结合redis(四)

發(fā)布時(shí)間:2024/7/5 javascript 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (入门SpringBoot)SpringBoot结合redis(四) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?? SpringBoot整合redis:

? 1.引入jar

? <!-- ?引入redis依賴 -->
<dependency>
????<groupId>org.springframework.boot</groupId>
????<artifactId>spring-boot-starter-data-redis</artifactId>
????<!-- 排除redis默認(rèn)客戶端lettuce -->
????<exclusions>
????????<exclusion>
????????????<groupId>io.lettuce</groupId>
????????????<artifactId>lettuce-core</artifactId>
????????</exclusion>
????</exclusions>
</dependency>
<!-- 引入redis客戶端驅(qū)動(dòng)jedis -->
<dependency>
????<groupId>redis.clients</groupId>
????<artifactId>jedis</artifactId>
</dependency>

?2.設(shè)定資源文件:

#Redis的配置: #Redis數(shù)據(jù)庫(kù)索引(默認(rèn)是0) spring.redis.database=1 # Redis服務(wù)器地址: spring.redis.host=localhost # Redis服務(wù)器連接端口 spring.redis.port=6379 # Redis服務(wù)器連接密碼(默認(rèn)為空) spring.redis.password=123456 # redis連接池最大連接數(shù)(使用負(fù)值表示沒有限制) spring.redis.jedis.pool.max-active=1000 # 連接池最大阻塞等待時(shí)間(使用負(fù)值表示沒有限制) spring.redis.jedis.pool.max-wait=2000ms # 連接池最大空閑數(shù)量: spring.redis.jedis.pool.max-idle=10 # 連接池最小空閑時(shí)間: spring.redis.jedis.pool.min-idle=5 # 連接超時(shí)時(shí)間(毫秒) spring.redis.timeout=10000ms

???? 3.在Controller使用:

@Autowired private RedisUtil redisUtil;

  附帶一個(gè)RedisUtil

package com.account.demo.config;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Component; import org.springframework.data.redis.connection.DataType; import org.springframework.data.redis.core.Cursor; import org.springframework.data.redis.core.ScanOptions; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.ZSetOperations.TypedTuple;import java.util.Collection; import java.util.Date; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import java.util.concurrent.TimeUnit; /*** Redis工具類** @author WangFan* @date 2018-02-24 下午03:09:50* @version 1.1 (GitHub文檔: https://github.com/whvcse/RedisUtil )*/ @Component public class RedisUtil {@Autowiredprivate StringRedisTemplate redisTemplate;/** -------------------key相關(guān)操作--------------------- *//*** 刪除key** @param key*/public void delete(String key) {redisTemplate.delete(key);}/*** 批量刪除key** @param keys*/public void delete(Collection<String> keys) {redisTemplate.delete(keys);}/*** 序列化key** @param key* @return*/public byte[] dump(String key) {return redisTemplate.dump(key);}/*** 是否存在key** @param key* @return*/public Boolean hasKey(String key) {return redisTemplate.hasKey(key);}/*** 設(shè)置過(guò)期時(shí)間** @param key* @param timeout* @param unit* @return*/public Boolean expire(String key, long timeout, TimeUnit unit) {return redisTemplate.expire(key, timeout, unit);}/*** 設(shè)置過(guò)期時(shí)間** @param key* @param date* @return*/public Boolean expireAt(String key, Date date) {return redisTemplate.expireAt(key, date);}/*** 查找匹配的key** @param pattern* @return*/public Set<String> keys(String pattern) {return redisTemplate.keys(pattern);}/*** 將當(dāng)前數(shù)據(jù)庫(kù)的 key 移動(dòng)到給定的數(shù)據(jù)庫(kù) db 當(dāng)中** @param key* @param dbIndex* @return*/public Boolean move(String key, int dbIndex) {return redisTemplate.move(key, dbIndex);}/*** 移除 key 的過(guò)期時(shí)間,key 將持久保持** @param key* @return*/public Boolean persist(String key) {return redisTemplate.persist(key);}/*** 返回 key 的剩余的過(guò)期時(shí)間** @param key* @param unit* @return*/public Long getExpire(String key, TimeUnit unit) {return redisTemplate.getExpire(key, unit);}/*** 返回 key 的剩余的過(guò)期時(shí)間** @param key* @return*/public Long getExpire(String key) {return redisTemplate.getExpire(key);}/*** 從當(dāng)前數(shù)據(jù)庫(kù)中隨機(jī)返回一個(gè) key** @return*/public String randomKey() {return redisTemplate.randomKey();}/*** 修改 key 的名稱** @param oldKey* @param newKey*/public void rename(String oldKey, String newKey) {redisTemplate.rename(oldKey, newKey);}/*** 僅當(dāng) newkey 不存在時(shí),將 oldKey 改名為 newkey** @param oldKey* @param newKey* @return*/public Boolean renameIfAbsent(String oldKey, String newKey) {return redisTemplate.renameIfAbsent(oldKey, newKey);}/*** 返回 key 所儲(chǔ)存的值的類型** @param key* @return*/public DataType type(String key) {return redisTemplate.type(key);}/** -------------------string相關(guān)操作--------------------- *//*** 設(shè)置指定 key 的值** @param key* @param value*/public void set(String key, String value) {redisTemplate.opsForValue().set(key, value);}/*** 獲取指定 key 的值** @param key* @return*/public String get(String key) {return redisTemplate.opsForValue().get(key);}/*** 返回 key 中字符串值的子字符** @param key* @param start* @param end* @return*/public String getRange(String key, long start, long end) {return redisTemplate.opsForValue().get(key, start, end);}/*** 將給定 key 的值設(shè)為 value ,并返回 key 的舊值(old value)** @param key* @param value* @return*/public String getAndSet(String key, String value) {return redisTemplate.opsForValue().getAndSet(key, value);}/*** 對(duì) key 所儲(chǔ)存的字符串值,獲取指定偏移量上的位(bit)** @param key* @param offset* @return*/public Boolean getBit(String key, long offset) {return redisTemplate.opsForValue().getBit(key, offset);}/*** 批量獲取** @param keys* @return*/public List<String> multiGet(Collection<String> keys) {return redisTemplate.opsForValue().multiGet(keys);}/*** 設(shè)置ASCII碼, 字符串'a'的ASCII碼是97, 轉(zhuǎn)為二進(jìn)制是'01100001', 此方法是將二進(jìn)制第offset位值變?yōu)関alue** @param key* @param postion 位置* @param value 值,true為1, false為0* @return*/public boolean setBit(String key, long offset, boolean value) {return redisTemplate.opsForValue().setBit(key, offset, value);}/*** 將值 value 關(guān)聯(lián)到 key ,并將 key 的過(guò)期時(shí)間設(shè)為 timeout** @param key* @param value* @param timeout 過(guò)期時(shí)間* @param unit 時(shí)間單位, 天:TimeUnit.DAYS 小時(shí):TimeUnit.HOURS 分鐘:TimeUnit.MINUTES* 秒:TimeUnit.SECONDS 毫秒:TimeUnit.MILLISECONDS*/public void setEx(String key, String value, long timeout, TimeUnit unit) {redisTemplate.opsForValue().set(key, value, timeout, unit);}/*** 只有在 key 不存在時(shí)設(shè)置 key 的值** @param key* @param value* @return 之前已經(jīng)存在返回false, 不存在返回true*/public boolean setIfAbsent(String key, String value) {return redisTemplate.opsForValue().setIfAbsent(key, value);}/*** 用 value 參數(shù)覆寫給定 key 所儲(chǔ)存的字符串值,從偏移量 offset 開始** @param key* @param value* @param offset 從指定位置開始覆寫*/public void setRange(String key, String value, long offset) {redisTemplate.opsForValue().set(key, value, offset);}/*** 獲取字符串的長(zhǎng)度** @param key* @return*/public Long size(String key) {return redisTemplate.opsForValue().size(key);}/*** 批量添加** @param maps*/public void multiSet(Map<String, String> maps) {redisTemplate.opsForValue().multiSet(maps);}/*** 同時(shí)設(shè)置一個(gè)或多個(gè) key-value 對(duì),當(dāng)且僅當(dāng)所有給定 key 都不存在** @param maps* @return 之前已經(jīng)存在返回false, 不存在返回true*/public boolean multiSetIfAbsent(Map<String, String> maps) {return redisTemplate.opsForValue().multiSetIfAbsent(maps);}/*** 增加(自增長(zhǎng)), 負(fù)數(shù)則為自減** @param key* @param value* @return*/public Long incrBy(String key, long increment) {return redisTemplate.opsForValue().increment(key, increment);}/*** @param key* @param value* @return*/public Double incrByFloat(String key, double increment) {return redisTemplate.opsForValue().increment(key, increment);}/*** 追加到末尾** @param key* @param value* @return*/public Integer append(String key, String value) {return redisTemplate.opsForValue().append(key, value);}/** -------------------hash相關(guān)操作------------------------- *//*** 獲取存儲(chǔ)在哈希表中指定字段的值** @param key* @param field* @return*/public Object hGet(String key, String field) {return redisTemplate.opsForHash().get(key, field);}/*** 獲取所有給定字段的值** @param key* @return*/public Map<Object, Object> hGetAll(String key) {return redisTemplate.opsForHash().entries(key);}/*** 獲取所有給定字段的值** @param key* @param fields* @return*/public List<Object> hMultiGet(String key, Collection<Object> fields) {return redisTemplate.opsForHash().multiGet(key, fields);}public void hPut(String key, String hashKey, String value) {redisTemplate.opsForHash().put(key, hashKey, value);}public void hPutAll(String key, Map<String, String> maps) {redisTemplate.opsForHash().putAll(key, maps);}/*** 僅當(dāng)hashKey不存在時(shí)才設(shè)置** @param key* @param hashKey* @param value* @return*/public Boolean hPutIfAbsent(String key, String hashKey, String value) {return redisTemplate.opsForHash().putIfAbsent(key, hashKey, value);}/*** 刪除一個(gè)或多個(gè)哈希表字段** @param key* @param fields* @return*/public Long hDelete(String key, Object... fields) {return redisTemplate.opsForHash().delete(key, fields);}/*** 查看哈希表 key 中,指定的字段是否存在** @param key* @param field* @return*/public boolean hExists(String key, String field) {return redisTemplate.opsForHash().hasKey(key, field);}/*** 為哈希表 key 中的指定字段的整數(shù)值加上增量 increment** @param key* @param field* @param increment* @return*/public Long hIncrBy(String key, Object field, long increment) {return redisTemplate.opsForHash().increment(key, field, increment);}/*** 為哈希表 key 中的指定字段的整數(shù)值加上增量 increment** @param key* @param field* @param delta* @return*/public Double hIncrByFloat(String key, Object field, double delta) {return redisTemplate.opsForHash().increment(key, field, delta);}/*** 獲取所有哈希表中的字段** @param key* @return*/public Set<Object> hKeys(String key) {return redisTemplate.opsForHash().keys(key);}/*** 獲取哈希表中字段的數(shù)量** @param key* @return*/public Long hSize(String key) {return redisTemplate.opsForHash().size(key);}/*** 獲取哈希表中所有值** @param key* @return*/public List<Object> hValues(String key) {return redisTemplate.opsForHash().values(key);}/*** 迭代哈希表中的鍵值對(duì)** @param key* @param options* @return*/public Cursor<Entry<Object, Object>> hScan(String key, ScanOptions options) {return redisTemplate.opsForHash().scan(key, options);}/** ------------------------list相關(guān)操作---------------------------- *//*** 通過(guò)索引獲取列表中的元素** @param key* @param index* @return*/public String lIndex(String key, long index) {return redisTemplate.opsForList().index(key, index);}/*** 獲取列表指定范圍內(nèi)的元素** @param key* @param start 開始位置, 0是開始位置* @param end 結(jié)束位置, -1返回所有* @return*/public List<String> lRange(String key, long start, long end) {return redisTemplate.opsForList().range(key, start, end);}/*** 存儲(chǔ)在list頭部** @param key* @param value* @return*/public Long lLeftPush(String key, String value) {return redisTemplate.opsForList().leftPush(key, value);}/*** @param key* @param value* @return*/public Long lLeftPushAll(String key, String... value) {return redisTemplate.opsForList().leftPushAll(key, value);}/*** @param key* @param value* @return*/public Long lLeftPushAll(String key, Collection<String> value) {return redisTemplate.opsForList().leftPushAll(key, value);}/*** 當(dāng)list存在的時(shí)候才加入** @param key* @param value* @return*/public Long lLeftPushIfPresent(String key, String value) {return redisTemplate.opsForList().leftPushIfPresent(key, value);}/*** 如果pivot存在,再pivot前面添加** @param key* @param pivot* @param value* @return*/public Long lLeftPush(String key, String pivot, String value) {return redisTemplate.opsForList().leftPush(key, pivot, value);}/*** @param key* @param value* @return*/public Long lRightPush(String key, String value) {return redisTemplate.opsForList().rightPush(key, value);}/*** @param key* @param value* @return*/public Long lRightPushAll(String key, String... value) {return redisTemplate.opsForList().rightPushAll(key, value);}/*** @param key* @param value* @return*/public Long lRightPushAll(String key, Collection<String> value) {return redisTemplate.opsForList().rightPushAll(key, value);}/*** 為已存在的列表添加值** @param key* @param value* @return*/public Long lRightPushIfPresent(String key, String value) {return redisTemplate.opsForList().rightPushIfPresent(key, value);}/*** 在pivot元素的右邊添加值** @param key* @param pivot* @param value* @return*/public Long lRightPush(String key, String pivot, String value) {return redisTemplate.opsForList().rightPush(key, pivot, value);}/*** 通過(guò)索引設(shè)置列表元素的值** @param key* @param index 位置* @param value*/public void lSet(String key, long index, String value) {redisTemplate.opsForList().set(key, index, value);}/*** 移出并獲取列表的第一個(gè)元素** @param key* @return 刪除的元素*/public String lLeftPop(String key) {return redisTemplate.opsForList().leftPop(key);}/*** 移出并獲取列表的第一個(gè)元素, 如果列表沒有元素會(huì)阻塞列表直到等待超時(shí)或發(fā)現(xiàn)可彈出元素為止** @param key* @param timeout 等待時(shí)間* @param unit 時(shí)間單位* @return*/public String lBLeftPop(String key, long timeout, TimeUnit unit) {return redisTemplate.opsForList().leftPop(key, timeout, unit);}/*** 移除并獲取列表最后一個(gè)元素** @param key* @return 刪除的元素*/public String lRightPop(String key) {return redisTemplate.opsForList().rightPop(key);}/*** 移出并獲取列表的最后一個(gè)元素, 如果列表沒有元素會(huì)阻塞列表直到等待超時(shí)或發(fā)現(xiàn)可彈出元素為止** @param key* @param timeout 等待時(shí)間* @param unit 時(shí)間單位* @return*/public String lBRightPop(String key, long timeout, TimeUnit unit) {return redisTemplate.opsForList().rightPop(key, timeout, unit);}/*** 移除列表的最后一個(gè)元素,并將該元素添加到另一個(gè)列表并返回** @param sourceKey* @param destinationKey* @return*/public String lRightPopAndLeftPush(String sourceKey, String destinationKey) {return redisTemplate.opsForList().rightPopAndLeftPush(sourceKey,destinationKey);}/*** 從列表中彈出一個(gè)值,將彈出的元素插入到另外一個(gè)列表中并返回它; 如果列表沒有元素會(huì)阻塞列表直到等待超時(shí)或發(fā)現(xiàn)可彈出元素為止** @param sourceKey* @param destinationKey* @param timeout* @param unit* @return*/public String lBRightPopAndLeftPush(String sourceKey, String destinationKey,long timeout, TimeUnit unit) {return redisTemplate.opsForList().rightPopAndLeftPush(sourceKey,destinationKey, timeout, unit);}/*** 刪除集合中值等于value得元素** @param key* @param index index=0, 刪除所有值等于value的元素; index>0, 從頭部開始刪除第一個(gè)值等于value的元素;* index<0, 從尾部開始刪除第一個(gè)值等于value的元素;* @param value* @return*/public Long lRemove(String key, long index, String value) {return redisTemplate.opsForList().remove(key, index, value);}/*** 裁剪list** @param key* @param start* @param end*/public void lTrim(String key, long start, long end) {redisTemplate.opsForList().trim(key, start, end);}/*** 獲取列表長(zhǎng)度** @param key* @return*/public Long lLen(String key) {return redisTemplate.opsForList().size(key);}/** --------------------set相關(guān)操作-------------------------- *//*** set添加元素** @param key* @param values* @return*/public Long sAdd(String key, String... values) {return redisTemplate.opsForSet().add(key, values);}/*** set移除元素** @param key* @param values* @return*/public Long sRemove(String key, Object... values) {return redisTemplate.opsForSet().remove(key, values);}/*** 移除并返回集合的一個(gè)隨機(jī)元素** @param key* @return*/public String sPop(String key) {return redisTemplate.opsForSet().pop(key);}/*** 將元素value從一個(gè)集合移到另一個(gè)集合** @param key* @param value* @param destKey* @return*/public Boolean sMove(String key, String value, String destKey) {return redisTemplate.opsForSet().move(key, value, destKey);}/*** 獲取集合的大小** @param key* @return*/public Long sSize(String key) {return redisTemplate.opsForSet().size(key);}/*** 判斷集合是否包含value** @param key* @param value* @return*/public Boolean sIsMember(String key, Object value) {return redisTemplate.opsForSet().isMember(key, value);}/*** 獲取兩個(gè)集合的交集** @param key* @param otherKey* @return*/public Set<String> sIntersect(String key, String otherKey) {return redisTemplate.opsForSet().intersect(key, otherKey);}/*** 獲取key集合與多個(gè)集合的交集** @param key* @param otherKeys* @return*/public Set<String> sIntersect(String key, Collection<String> otherKeys) {return redisTemplate.opsForSet().intersect(key, otherKeys);}/*** key集合與otherKey集合的交集存儲(chǔ)到destKey集合中** @param key* @param otherKey* @param destKey* @return*/public Long sIntersectAndStore(String key, String otherKey, String destKey) {return redisTemplate.opsForSet().intersectAndStore(key, otherKey,destKey);}/*** key集合與多個(gè)集合的交集存儲(chǔ)到destKey集合中** @param key* @param otherKeys* @param destKey* @return*/public Long sIntersectAndStore(String key, Collection<String> otherKeys,String destKey) {return redisTemplate.opsForSet().intersectAndStore(key, otherKeys,destKey);}/*** 獲取兩個(gè)集合的并集** @param key* @param otherKeys* @return*/public Set<String> sUnion(String key, String otherKeys) {return redisTemplate.opsForSet().union(key, otherKeys);}/*** 獲取key集合與多個(gè)集合的并集** @param key* @param otherKeys* @return*/public Set<String> sUnion(String key, Collection<String> otherKeys) {return redisTemplate.opsForSet().union(key, otherKeys);}/*** key集合與otherKey集合的并集存儲(chǔ)到destKey中** @param key* @param otherKey* @param destKey* @return*/public Long sUnionAndStore(String key, String otherKey, String destKey) {return redisTemplate.opsForSet().unionAndStore(key, otherKey, destKey);}/*** key集合與多個(gè)集合的并集存儲(chǔ)到destKey中** @param key* @param otherKeys* @param destKey* @return*/public Long sUnionAndStore(String key, Collection<String> otherKeys,String destKey) {return redisTemplate.opsForSet().unionAndStore(key, otherKeys, destKey);}/*** 獲取兩個(gè)集合的差集** @param key* @param otherKey* @return*/public Set<String> sDifference(String key, String otherKey) {return redisTemplate.opsForSet().difference(key, otherKey);}/*** 獲取key集合與多個(gè)集合的差集** @param key* @param otherKeys* @return*/public Set<String> sDifference(String key, Collection<String> otherKeys) {return redisTemplate.opsForSet().difference(key, otherKeys);}/*** key集合與otherKey集合的差集存儲(chǔ)到destKey中** @param key* @param otherKey* @param destKey* @return*/public Long sDifference(String key, String otherKey, String destKey) {return redisTemplate.opsForSet().differenceAndStore(key, otherKey,destKey);}/*** key集合與多個(gè)集合的差集存儲(chǔ)到destKey中** @param key* @param otherKeys* @param destKey* @return*/public Long sDifference(String key, Collection<String> otherKeys,String destKey) {return redisTemplate.opsForSet().differenceAndStore(key, otherKeys,destKey);}/*** 獲取集合所有元素** @param key* @param otherKeys* @param destKey* @return*/public Set<String> setMembers(String key) {return redisTemplate.opsForSet().members(key);}/*** 隨機(jī)獲取集合中的一個(gè)元素** @param key* @return*/public String sRandomMember(String key) {return redisTemplate.opsForSet().randomMember(key);}/*** 隨機(jī)獲取集合中count個(gè)元素** @param key* @param count* @return*/public List<String> sRandomMembers(String key, long count) {return redisTemplate.opsForSet().randomMembers(key, count);}/*** 隨機(jī)獲取集合中count個(gè)元素并且去除重復(fù)的** @param key* @param count* @return*/public Set<String> sDistinctRandomMembers(String key, long count) {return redisTemplate.opsForSet().distinctRandomMembers(key, count);}/*** @param key* @param options* @return*/public Cursor<String> sScan(String key, ScanOptions options) {return redisTemplate.opsForSet().scan(key, options);}/**------------------zSet相關(guān)操作--------------------------------*//*** 添加元素,有序集合是按照元素的score值由小到大排列** @param key* @param value* @param score* @return*/public Boolean zAdd(String key, String value, double score) {return redisTemplate.opsForZSet().add(key, value, score);}/*** @param key* @param values* @return*/public Long zAdd(String key, Set<TypedTuple<String>> values) {return redisTemplate.opsForZSet().add(key, values);}/*** @param key* @param values* @return*/public Long zRemove(String key, Object... values) {return redisTemplate.opsForZSet().remove(key, values);}/*** 增加元素的score值,并返回增加后的值** @param key* @param value* @param delta* @return*/public Double zIncrementScore(String key, String value, double delta) {return redisTemplate.opsForZSet().incrementScore(key, value, delta);}/*** 返回元素在集合的排名,有序集合是按照元素的score值由小到大排列** @param key* @param value* @return 0表示第一位*/public Long zRank(String key, Object value) {return redisTemplate.opsForZSet().rank(key, value);}/*** 返回元素在集合的排名,按元素的score值由大到小排列** @param key* @param value* @return*/public Long zReverseRank(String key, Object value) {return redisTemplate.opsForZSet().reverseRank(key, value);}/*** 獲取集合的元素, 從小到大排序** @param key* @param start 開始位置* @param end 結(jié)束位置, -1查詢所有* @return*/public Set<String> zRange(String key, long start, long end) {return redisTemplate.opsForZSet().range(key, start, end);}/*** 獲取集合元素, 并且把score值也獲取** @param key* @param start* @param end* @return*/public Set<TypedTuple<String>> zRangeWithScores(String key, long start,long end) {return redisTemplate.opsForZSet().rangeWithScores(key, start, end);}/*** 根據(jù)Score值查詢集合元素** @param key* @param min 最小值* @param max 最大值* @return*/public Set<String> zRangeByScore(String key, double min, double max) {return redisTemplate.opsForZSet().rangeByScore(key, min, max);}/*** 根據(jù)Score值查詢集合元素, 從小到大排序** @param key* @param min 最小值* @param max 最大值* @return*/public Set<TypedTuple<String>> zRangeByScoreWithScores(String key,double min, double max) {return redisTemplate.opsForZSet().rangeByScoreWithScores(key, min, max);}/*** @param key* @param min* @param max* @param start* @param end* @return*/public Set<TypedTuple<String>> zRangeByScoreWithScores(String key,double min, double max, long start, long end) {return redisTemplate.opsForZSet().rangeByScoreWithScores(key, min, max,start, end);}/*** 獲取集合的元素, 從大到小排序** @param key* @param start* @param end* @return*/public Set<String> zReverseRange(String key, long start, long end) {return redisTemplate.opsForZSet().reverseRange(key, start, end);}/*** 獲取集合的元素, 從大到小排序, 并返回score值** @param key* @param start* @param end* @return*/public Set<TypedTuple<String>> zReverseRangeWithScores(String key,long start, long end) {return redisTemplate.opsForZSet().reverseRangeWithScores(key, start,end);}/*** 根據(jù)Score值查詢集合元素, 從大到小排序** @param key* @param min* @param max* @return*/public Set<String> zReverseRangeByScore(String key, double min,double max) {return redisTemplate.opsForZSet().reverseRangeByScore(key, min, max);}/*** 根據(jù)Score值查詢集合元素, 從大到小排序** @param key* @param min* @param max* @return*/public Set<TypedTuple<String>> zReverseRangeByScoreWithScores(String key, double min, double max) {return redisTemplate.opsForZSet().reverseRangeByScoreWithScores(key,min, max);}/*** @param key* @param min* @param max* @param start* @param end* @return*/public Set<String> zReverseRangeByScore(String key, double min,double max, long start, long end) {return redisTemplate.opsForZSet().reverseRangeByScore(key, min, max,start, end);}/*** 根據(jù)score值獲取集合元素?cái)?shù)量** @param key* @param min* @param max* @return*/public Long zCount(String key, double min, double max) {return redisTemplate.opsForZSet().count(key, min, max);}/*** 獲取集合大小** @param key* @return*/public Long zSize(String key) {return redisTemplate.opsForZSet().size(key);}/*** 獲取集合大小** @param key* @return*/public Long zZCard(String key) {return redisTemplate.opsForZSet().zCard(key);}/*** 獲取集合中value元素的score值** @param key* @param value* @return*/public Double zScore(String key, Object value) {return redisTemplate.opsForZSet().score(key, value);}/*** 移除指定索引位置的成員** @param key* @param start* @param end* @return*/public Long zRemoveRange(String key, long start, long end) {return redisTemplate.opsForZSet().removeRange(key, start, end);}/*** 根據(jù)指定的score值的范圍來(lái)移除成員** @param key* @param min* @param max* @return*/public Long zRemoveRangeByScore(String key, double min, double max) {return redisTemplate.opsForZSet().removeRangeByScore(key, min, max);}/*** 獲取key和otherKey的并集并存儲(chǔ)在destKey中** @param key* @param otherKey* @param destKey* @return*/public Long zUnionAndStore(String key, String otherKey, String destKey) {return redisTemplate.opsForZSet().unionAndStore(key, otherKey, destKey);}/*** @param key* @param otherKeys* @param destKey* @return*/public Long zUnionAndStore(String key, Collection<String> otherKeys,String destKey) {return redisTemplate.opsForZSet().unionAndStore(key, otherKeys, destKey);}/*** 交集** @param key* @param otherKey* @param destKey* @return*/public Long zIntersectAndStore(String key, String otherKey,String destKey) {return redisTemplate.opsForZSet().intersectAndStore(key, otherKey,destKey);}/*** 交集** @param key* @param otherKeys* @param destKey* @return*/public Long zIntersectAndStore(String key, Collection<String> otherKeys,String destKey) {return redisTemplate.opsForZSet().intersectAndStore(key, otherKeys,destKey);}/*** @param key* @param options* @return*/public Cursor<TypedTuple<String>> zScan(String key, ScanOptions options) {return redisTemplate.opsForZSet().scan(key, options);}}

?

轉(zhuǎn)載于:https://www.cnblogs.com/historylyt/p/10927523.html

總結(jié)

以上是生活随笔為你收集整理的(入门SpringBoot)SpringBoot结合redis(四)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

国产精品精品国产 | 天天射天天干 | 中文国产在线观看 | 在线国产视频观看 | 亚洲精品五月天 | 日韩av一区二区三区在线观看 | 天天爱天天射 | 久久天堂影院 | 国产麻豆精品久久 | 国产一区二区三区四区大秀 | 特级毛片网 | 日本亚洲国产 | 在线免费中文字幕 | 色悠悠久久综合 | 国产色就色 | 天天干天天做天天爱 | 欧美一级性视频 | 四虎影视成人永久免费观看亚洲欧美 | 久久久久 | 日韩成人免费观看 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 国产一区在线视频播放 | av动图| 99视频一区 | 国产精品女同一区二区三区久久夜 | 国产精品9999 | 精品国产资源 | 国产91在线观 | 人人看97| 免费观看性生活大片3 | 亚洲国产成人在线观看 | 免费亚洲精品视频 | 国产麻豆精品免费视频 | 日韩av一区二区在线播放 | a级成人毛片 | 国产精品入口麻豆www | 又黄又爽又无遮挡的视频 | 成年人黄色免费网站 | 又污又黄的网站 | 国产精品区在线观看 | 波多野结衣理论片 | 安徽妇搡bbbb搡bbbb | 久草在线免费在线观看 | 六月丁香激情网 | 又黄又爽的视频在线观看网站 | 黄色的网站免费看 | 在线日韩精品视频 | 91成人网在线观看 | 国产视频2| 天天综合入口 | 亚洲免费视频在线观看 | 手机看片国产日韩 | 国产成人精品女人久久久 | 亚洲精品美女 | 亚洲va欧美va人人爽春色影视 | 国产1级毛片 | 天天干视频在线 | 日韩av一区在线观看 | 久久成人福利 | 亚洲清纯国产 | 视频在线观看入口黄最新永久免费国产 | 97超在线视频 | 一区二区国产精品 | 99久热精品 | 国产丝袜美腿在线 | 午夜精品久久久久久久99婷婷 | 日韩理论在线观看 | 五月婷社区 | 国产流白浆高潮在线观看 | 午夜久久久久久久久久影院 | 麻豆免费在线播放 | 国产精品一区二区三区99 | 亚洲黄色免费电影 | 91豆麻精品91久久久久久 | 久久久激情网 | 麻豆影视网站 | 久久久电影 | 国产精品久久亚洲 | 国产午夜在线观看视频 | 久久婷亚洲五月一区天天躁 | 国产视频一区二区在线播放 | 久久96国产精品久久99漫画 | 91丨九色丨国产在线 | 99精彩视频在线观看免费 | 一本大道久久精品懂色aⅴ 五月婷社区 | 久久麻豆精品 | 成人欧美一区二区三区黑人麻豆 | 国产精品欧美激情在线观看 | 天天想夜夜操 | 91精品国产成 | 91av小视频 | 亚洲国产精品久久久 | 日韩视频免费在线观看 | 婷婷视频在线观看 | 国产99在线 | 美女视频黄免费的久久 | 少妇性色午夜淫片aaaze | 免费男女羞羞的视频网站中文字幕 | 国产精品成人一区二区三区吃奶 | 99视频网站 | 波多野结衣久久资源 | 日韩欧美一区二区三区视频 | 日本黄色免费看 | 天天操天| 亚洲欧美日韩国产 | 久草在线免费色站 | 美女免费视频一区二区 | 天天玩天天干天天操 | 成人av影院在线观看 | 青春草国产视频 | 久久艹影院 | 特级免费毛片 | 国产精品日韩精品 | 国产精品精品国产婷婷这里av | 精品a在线 | 国产精品区免费视频 | 国产一级不卡视频 | 日韩在线欧美在线 | 精品美女视频 | 亚洲人精品午夜 | 国产99久久久精品视频 | 欧美精品一区二区性色 | 国产精品婷婷 | 在线成人一区二区 | 天天色天天干天天 | 天天婷婷 | 国内揄拍国内精品 | 亚洲精品视频大全 | 久久99九九99精品 | 亚洲一区二区视频在线播放 | 久久久视频在线 | 午夜av免费在线观看 | 东方av免费在线观看 | 国产日韩视频在线观看 | 亚洲天堂网在线视频观看 | 久久综合狠狠 | 91精品国自产在线观看 | 中日韩三级视频 | 色999视频| 国产99中文字幕 | 国产清纯在线 | 99re久久精品国产 | 免费人成在线观看网站 | 97理论片| 久久免费视频在线观看6 | 亚洲精品成人av在线 | 美女av在线免费 | 亚洲欧美日韩精品久久奇米一区 | 国产成人精品在线观看 | 精品久久久久一区二区国产 | 婷婷在线免费视频 | 国产精品久久久久久久久久免费 | 日韩视频一区二区在线观看 | 国产精品成人一区二区三区 | 亚洲麻豆精品 | 国产精品99久久久精品 | 国产精品麻豆视频 | 久久黄色美女 | 婷婷日韩 | 国产精品毛片一区视频播 | 国产精品丝袜在线 | 婷婷丁香狠狠爱 | 亚洲精品视频在线免费 | 成 人 黄 色 免费播放 | 精品女同一区二区三区在线观看 | 成人va在线观看 | 一级电影免费在线观看 | 免费av小说 | 91看片一区二区三区 | 天天拍天天草 | 亚洲免费一级电影 | 天天曰天天曰 | 日韩videos| 天天草天天 | 99久热在线精品视频成人一区 | 久久精品久久精品久久 | 久久激情网站 | 99亚洲精品视频 | 有码一区二区三区 | 97人人精品 | 少妇性xxx| 三级av在线播放 | 国产专区日韩专区 | 亚洲欧美国产精品18p | 99视频精品在线 | 国产精品网红直播 | 超碰人人射 | 国产黄色片免费在线观看 | 日韩精品欧美专区 | 天天曰天天曰 | 日韩激情久久 | 深夜免费福利视频 | 久久av免费 | 久久爱资源网 | 欧美在线1| 香蕉在线视频观看 | 国产黄免费在线观看 | 久久成人黄色 | 成年人免费电影在线观看 | 99精品视频在线播放免费 | 中文字幕不卡在线88 | 五月开心六月婷婷 | 中文字幕高清在线 | 亚洲天天在线日亚洲洲精 | 色999精品| 五月婷婷丁香 | 国产最顶级的黄色片在线免费观看 | 国产精品99久久久久人中文网介绍 | 日韩在线字幕 | 很污的网站 | 免费看黄网站在线 | 91一区啪爱嗯打偷拍欧美 | 蜜桃视频在线观看一区 | 久久久久免费网 | 丁香视频全集免费观看 | 久久这里只有精品1 | 日韩高清一区在线 | 国产理论片在线观看 | 久久久影视 | 综合网伊人 | 1024久久 | 成人三级黄色 | 国产91全国探花系列在线播放 | 91大片网站| 久久久综合精品 | 午夜天天操 | 91中文字幕一区 | 九色视频网 | 亚州国产精品久久久 | 亚洲婷婷在线 | 久久69精品久久久久久久电影好 | 久久久精品日本 | 成人黄色免费观看 | 欧美a性| 黄色成人av | 操操操人人人 | 天天综合精品 | 日韩三级免费 | 成人午夜精品 | 天天射天天干天天 | 91在线观看视频网站 | 中文字幕在线资源 | 久久超| 日韩精品一区二区三区电影 | 国产精品理论视频 | 一区二区三区三区在线 | 国产精品video | 日日狠狠 | 91最新国产| 蜜臀av一区| 黄色小说免费在线观看 | 91精品免费视频 | 国产高清黄色 | 国产在线精品福利 | 国产精品久久久久免费a∨ 欧美一级性生活片 | 午夜精品久久久久久久久久久 | 国产精品永久久久久久久www | 精品专区| 久久精品2 | 国产a级片免费观看 | 免费国产一区二区视频 | 99色在线播放 | 贫乳av女优大全 | 激情五月色播五月 | 一区二区三区免费播放 | 欧美久久综合 | 亚洲欧美在线视频免费 | 国产精品白浆视频 | 四虎天堂| 99久久精品免费看国产 | 97视频在线观看播放 | 国产123区在线观看 国产精品麻豆91 | 日本中文字幕在线一区 | 欧美a级在线免费观看 | 亚洲1区在线 | 日韩免费看 | 欧美精品在线观看一区 | 欧美久久电影 | 婷婷综合av| 人人爽久久久噜噜噜电影 | 亚洲精品黄 | 亚洲精品大片www | 国产精品大片在线观看 | 色99网| 亚洲在线观看av | 99色婷婷 | 日韩一区精品 | 91福利视频久久久久 | 亚洲 欧美 另类人妖 | 欧美日韩高清一区二区 国产亚洲免费看 | 日韩在线视频观看 | 丝袜一区在线 | 久久久久久综合网天天 | 婷婷看片| 日本久久成人中文字幕电影 | 午夜国产一区 | 欧美日韩国产精品一区 | 99久久精品国产免费看不卡 | 人人射人人射 | 人人干人人草 | 国产精品手机在线 | 日日干网址 | 国产成人精品电影久久久 | 国产福利精品一区二区 | 色姑娘综合天天 | 久久久免费精品国产一区二区 | 九月婷婷色 | 国产精品视频app | 婷婷六月丁香激情 | 狠狠色丁香久久婷婷综合丁香 | 在线电影 一区 | 国产精品久久久久免费 | 国产精品久久久久影院日本 | 粉嫩av一区二区三区四区 | 日日操日日 | 91精品导航| 91精品视频播放 | 亚洲日韩欧美一区二区在线 | 成人午夜黄色影院 | 97精品国自产拍在线观看 | 激情综合五月网 | 国产视频每日更新 | 欧美午夜久久久 | 久久国产免费 | 999久久精品 | 精品人妖videos欧美人妖 | 国产免费黄色 | 色94色欧美| 特级黄色一级 | 精品极品在线 | 日日草天天草 | a天堂在线看 | 99色资源| 日韩电影中文字幕 | 在线香蕉视频 | 久久久精品久久日韩一区综合 | 中文字幕av网站 | 国产精品一区二区中文字幕 | 99精品视频在线免费观看 | 字幕网资源站中文字幕 | 国产精品永久久久久久久久久 | 久久躁日日躁aaaaxxxx | 国产精品99爱 | 亚洲一区网 | 国产一二区视频 | 亚洲视频 一区 | 国产在线视频在线观看 | 天天操天天能 | 国产人成一区二区三区影院 | 91精品一区在线观看 | 午夜在线国产 | 麻豆网站免费观看 | 日韩免费电影在线观看 | 日韩r级电影在线观看 | 国产又粗又猛又色又黄视频 | 99国产精品免费网站 | 亚洲国产精品va在线 | 久久九九精品 | 日本aaaa级毛片在线看 | 日韩精品免费专区 | 久久视频在线免费观看 | 婷婷国产视频 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 久久久久久久影院 | 一区二区三区不卡在线 | 午夜国产一区 | 婷婷久久国产 | 日本三级久久久 | 日韩三级av| 国产精品永久在线观看 | 欧美日韩视频在线观看一区二区 | 国产一区二区在线免费播放 | 99精品视频在线 | 在线视频一区二区 | 婷婷在线网站 | 国产人在线成免费视频 | 成人免费在线看片 | 天天激情站 | 久影院| 国产精品视频线看 | 久久理论电影网 | 亚洲精品h | 欧美日韩视频在线 | 很黄很色很污的网站 | 亚洲免费精品视频 | 国产成人精品综合久久久 | 五月天久久婷婷 | 麻豆一精品传二传媒短视频 | 狠狠干天天操 | 伊人激情网| 五月婷婷,六月丁香 | 免费福利视频网 | 成 人 黄 色 视频 免费观看 | 美女视频免费精品 | 国产成人精品亚洲精品 | 人人狠狠综合久久亚洲婷 | 一区二区男女 | 在线免费观看成人 | 韩国av不卡 | 九九九热精品 | 国产91在线免费视频 | 亚洲人av免费网站 | 91福利试看 | 99精品偷拍视频一区二区三区 | 久久的色 | 色综合久久久久综合99 | 色综合欧洲| 成人观看视频 | 热精品| 99久久精品视频免费 | 久久黄色成人 | 狠狠色丁香婷婷综合视频 | 国产精品美女久久 | 精品国产a | 狠狠色丁香婷婷综合久小说久 | 又长又大又黑又粗欧美 | 超碰97在线资源站 | 亚洲国产日本 | 天天人人综合 | www.久久久.com| 免费久久久久久 | 国产高清免费视频 | 日韩欧美xxx | 欧美性大战 | 国产精品视频最多的网站 | 天天干夜夜夜操天 | 日日夜夜精品 | 久久久一本精品99久久精品66 | 天堂在线视频中文网 | 香蕉影视在线观看 | 日本精品久久久久久 | 亚洲精品理论 | 丁香六月久久综合狠狠色 | 超级av在线 | 91手机视频在线 | 中文一区二区三区在线观看 | 免费h漫在线观看 | 不卡在线一区 | 一区二区视频欧美 | 国产精品美女久久久久aⅴ 干干夜夜 | 国产精品久久久久久模特 | 免费在线观看亚洲视频 | 伊人中文网 | 国产精品一区二区在线观看免费 | 麻豆91视频| 久青草影院 | 片黄色毛片黄色毛片 | 久热爱| 在线国产中文字幕 | 久久99国产精品免费 | 视频国产一区二区三区 | 天天插狠狠插 | 免费精品国产 | 在线观看日本高清mv视频 | 精品在线播放视频 | 2019中文| 日本丰满少妇免费一区 | 久久艹国产视频 | 69国产精品视频免费观看 | 91精品夜夜 | 91探花系列在线播放 | 久久久久久久免费 | 精品久久久久国产 | 精品一区二区三区在线播放 | 国产免费av一区二区三区 | 狠狠的干狠狠的操 | 欧美成a人片在线观看久 | 免费看的黄网站软件 | 又色又爽又激情的59视频 | 精品久久亚洲 | 亚洲精品一区二区久 | 久久久www免费电影网 | 天天爱天天操天天射 | 国产原创中文在线 | 97av色| 国产精品一区二区在线播放 | 日韩中文在线字幕 | 欧美日韩中文字幕视频 | 日韩精品一区电影 | 久久日本视频 | 人人讲下载| 99日韩精品 | 日韩久久久 | 国产在线综合视频 | 日韩视频在线观看免费 | 日韩在线影视 | 麻豆果冻剧传媒在线播放 | 久久午夜电影 | 国产成人av一区二区三区在线观看 | 91麻豆文化传媒在线观看 | 久久美女视频 | 亚洲jizzjizz日本少妇 | av电影不卡在线 | 欧美日韩高清一区二区 | 日韩午夜电影 | 国产精品久久99综合免费观看尤物 | 六月丁香婷婷网 | 欧美色综合| av亚洲产国偷v产偷v自拍小说 | 男女精品久久 | 日韩三级中文字幕 | 99久视频| 在线中文字母电影观看 | 午夜视频在线观看一区二区三区 | 亚洲爱视频 | 人人爽人人爽人人片 | 一级a性色生活片久久毛片波多野 | 国产精品久久久久久一区二区 | 亚洲一区欧美精品 | 91香蕉视频污在线 | 日韩av不卡在线 | 在线观看中文字幕第一页 | 成人黄色大片网站 | 国产美女精品久久久 | 人人插人人插 | 国产精品日韩欧美一区二区 | 美女免费黄视频网站 | 久久精品网址 | 福利视频一区二区 | 欧美孕交vivoestv另类 | 丁香综合| 国产综合香蕉五月婷在线 | 丰满少妇对白在线偷拍 | 国产亚洲精品久久久久久久久久 | 日韩三级免费观看 | 99精品久久精品一区二区 | 中文字幕在线播放一区二区 | 午夜美女av| 国产日韩精品一区二区在线观看播放 | 国产99在线免费 | 最新动作电影 | 少妇性aaaaaaaaa视频 | 日韩免费网站 | 免费在线观看中文字幕 | 97在线观看免费观看 | 激情综合五月天 | 国产专区欧美专区 | 不卡的av中文字幕 | 成年人免费看 | 日韩免费视频播放 | 97超碰资源 | 亚洲激情综合网 | a极黄色片 | 国产亚洲综合性久久久影院 | 婷婷丁香综合 | 精品人妖videos欧美人妖 | 亚洲精区二区三区四区麻豆 | 黄色一区三区 | 91成人在线观看高潮 | 亚洲天天在线 | 日韩视频中文字幕在线观看 | 操操综合网 | 欧美一级免费黄色片 | 亚洲经典中文字幕 | 成人av日韩 | 国产黄a三级 | 玖玖在线观看视频 | 欧美黑吊大战白妞欧美 | 国产精品11| 国产精品久久久免费看 | 亚洲国产精品成人va在线观看 | 日本三级吹潮在线 | 99久久精品国产欧美主题曲 | 精品久久91| 欧美午夜寂寞影院 | 久久精品99国产精品亚洲最刺激 | 国产精品九九热 | 亚洲成人在线免费 | 特黄一级毛片 | 国产精品午夜av | 青青草在久久免费久久免费 | 日韩在线观看精品 | 四虎在线永久免费观看 | 欧美综合久久久 | 蜜桃av人人夜夜澡人人爽 | 国产人成精品一区二区三 | 午夜精品久久久久久久久久久久 | 成人一级视频在线观看 | 超碰最新网址 | 日韩高清精品一区二区 | 日韩在线视频网址 | 中文字幕色在线 | 日韩成人免费观看 | 国产精品第一视频 | 国产美女视频免费 | 四虎影视8848dvd | 在线日韩视频 | 久久成人免费电影 | 99久精品视频 | 午夜精品视频一区二区三区在线看 | 91成人在线看 | 久久国产精品影片 | 热久久免费视频精品 | 日本在线成人 | 欧美色黄 | 国产男女免费完整视频 | 97人人艹 | 亚洲专区在线播放 | av亚洲产国偷v产偷v自拍小说 | 四虎影视精品永久在线观看 | 天天操天天干天天玩 | 贫乳av女优大全 | 国产精品成人av在线 | 97国产大学生情侣酒店的特点 | 五月天堂色 | 黄色免费观看视频 | 精品国产伦一区二区三区观看方式 | 超碰97公开 | 亚洲美女视频在线观看 | 特黄一级毛片 | 在线看片日韩 | 久久精品官网 | 久草在线视频免费资源观看 | 久草视频在线资源站 | 国产亚洲婷婷免费 | 91精品一区在线观看 | 国产视频精品免费 | 在线观看岛国片 | 国产精品v a免费视频 | 欧洲一区二区三区精品 | 久久久国产99久久国产一 | 91福利免费 | 一区二区三区在线观看免费视频 | 黄污视频网站大全 | 在线天堂8√ | 日本深夜福利视频 | 久久草视频 | 成人av片免费看 | 99综合电影在线视频 | 伊人网站 | 超级碰碰碰免费视频 | 99热官网 | 国产美女免费看 | 日韩久久激情 | 99视频在线观看视频 | 国产真实精品久久二三区 | 久草精品视频在线观看 | 精品国产乱码久久久久久天美 | 国产视频精品视频 | 五月婷婷视频在线观看 | 亚洲精品国产精品乱码不99热 | 久草视频免费观 | 国产 视频 久久 | av网站免费看| 免费看黄色91 | 欧美在线一 | 婷婷社区五月天 | 欧美一区影院 | 欧美极度另类性三渗透 | 在线观看亚洲国产精品 | 欧美va天堂va视频va在线 | 99久久精品一区二区成人 | 欧美一级片在线观看视频 | 天堂网av 在线 | 久久97精品 | 日韩成人免费在线电影 | 日韩黄色av网站 | 91亚洲在线观看 | 操天天操 | 网站你懂的 | 91精品久久久久久久久久入口 | 久久精品毛片基地 | 免费中文字幕视频 | 国产福利91精品一区二区三区 | 免费看污的网站 | 丁香六月婷婷 | 国产成人av在线 | 免费观看一级成人毛片 | 激情婷婷在线 | 国产香蕉97碰碰碰视频在线观看 | 女人18毛片a级毛片一区二区 | 免费a级黄色毛片 | 中文字幕在线影院 | 精品成人免费 | 五月天丁香综合 | 成人动漫视频在线 | 国产成人精品免费在线观看 | 欧美视频日韩 | 国产欧美最新羞羞视频在线观看 | 91九色视频国产 | 国产精品一二 | 在线观看岛国片 | 日韩免费av网址 | 在线播放国产一区二区三区 | 99久高清在线观看视频99精品热在线观看视频 | www激情com| av在线一二三区 | 激情喷水| 欧美在线视频精品 | 久久久久国产精品午夜一区 | 国产伦精品一区二区三区无广告 | 最近2019年日本中文免费字幕 | www.黄色在线 | 最新中文字幕在线资源 | 国产成人一区在线 | 免费美女av | h视频在线看 | 超碰97人人爱 | 国产精品久久av | 久久久影片 | 日本黄色免费在线观看 | 久久私人影院 | 亚洲精品理论片 | 在线免费观看黄色大片 | www.狠狠操.com | 日本黄色免费观看 | 免费电影一区二区三区 | 在线免费观看黄网站 | 日韩免费成人 | 国产 一区二区三区 在线 | 成年人在线免费视频观看 | 国产精品免费一区二区三区在线观看 | 亚洲理论在线观看电影 | 久久艹综合| 又黄又爽又无遮挡免费的网站 | 精品久久久久久久久久久久久 | 国产精品精品视频 | 婷婷资源站| 五月婷久久 | 欧美一二三专区 | 欧美一区二区三区在线看 | 亚洲视频久久久久 | 国产资源精品在线观看 | 欧美日韩一区二区三区不卡 | 91一区二区三区在线观看 | 高清av网站 | 婷婷久久亚洲 | 亚洲视频在线免费看 | 狠狠伊人 | 欧美精品久久久久久久免费 | 五月网婷婷 | 亚洲另类人人澡 | 国产在线观看你懂的 | 国产精品va在线播放 | 三级大片网站 | 久久综合久久综合九色 | 日韩av看片 | 色综合久久久网 | 蜜臀av性久久久久蜜臀av | 国产视频在线播放 | 久久综合九色综合97婷婷女人 | 免费黄在线看 | 亚洲成a人片77777kkkk1在线观看 | 黄色成人av | 免费观看91 | 亚洲精品乱码久久久久久蜜桃动漫 | 黄在线| 激情在线网址 | 欧洲亚洲国产视频 | 黄色91在线观看 | 亚洲人成免费网站 | 天天爽夜夜爽人人爽曰av | 99r国产精品 | 亚洲三级在线免费观看 | 天天天天综合 | 成人国产精品久久久久久亚洲 | 人人看人人 | 在线观看电影av | 欧美精品久久99 | 日韩在线观| 中文字幕精品三级久久久 | 麻豆视频在线 | 在线国产能看的 | 超碰人人草人人 | 久久国产精品视频免费看 | 久久久精品小视频 | 9999亚洲| 99精品视频在线播放观看 | 久久久黄色av | 色视频网址 | 91手机视频| 91视频在线 | 97在线精品视频 | 免费不卡中文字幕视频 | 久久99热这里只有精品 | 81国产精品久久久久久久久久 | 三级免费黄 | 一区二区三区四区五区在线 | 国产日韩高清在线 | 日韩在线视频观看免费 | 欧美激情精品久久久久久变态 | 国产精品99久久99久久久二8 | 国产精品久久婷婷六月丁香 | 国产高清日韩欧美 | 欧美激情视频一区 | 久久激情综合网 | 黄色免费电影网站 | 一本一本久久a久久 | 丁香花在线观看视频在线 | 欧美一区二区在线刺激视频 | 天天射天天干天天插 | av东方在线| 国产黄| 久草在线一免费新视频 | 久久视频二区 | 九九激情视频 | 在线看v片成人 | 在线看的av网站 | 国产免费a| 中文字幕中文字幕在线中文字幕三区 | 国产小视频在线免费观看 | 韩国一区二区三区视频 | 色偷偷中文字幕 | 日本不卡123区 | 日韩精品视频久久 | 久久尤物电影视频在线观看 | 久久综合九色九九 | 日日操夜夜操狠狠操 | 久久香蕉国产精品麻豆粉嫩av | 精品久久久久久综合日本 | 在线看v片成人 | 69精品久久久 | 一级成人免费视频 | 日韩黄色在线观看 | 国产激情小视频在线观看 | 久久精品麻豆 | 亚洲成a人片在线www | 精品国产一区二区三区在线观看 | a v在线观看 | 亚洲激情六月 | 久久伦理网 | 丁香婷婷综合色啪 | 免费视频xnxx com | 免费电影一区二区三区 | 亚洲首页| 中文字幕高清在线 | 亚洲免费av电影 | 中文字幕人成人 | 久久国产露脸精品国产 | 在线观看不卡视频 | 99九九视频 | 亚洲干视频在线观看 | 午夜10000| 97成人啪啪网 | 亚洲黄色在线观看 | 在线观看av麻豆 | 亚洲精选国产 | 二区视频在线 | 国产黄色片免费观看 | 亚洲永久字幕 | 中文在线8资源库 | 日本久久免费视频 | a级国产毛片 | av东方在线 | 婷婷在线网站 | 国产亚洲视频在线免费观看 | 日韩成人免费在线观看 | 色婷婷国产精品一区在线观看 | 天天激情在线 | 在线黄色免费av | 国产天天爽 | 国内精品中文字幕 | 欧美激情视频一区二区三区免费 | 永久av免费在线观看 | 精品美女在线视频 | 综合色综合色 | 天天色天天射天天综合网 | 久草爱| 午夜久久久久久久 | 亚洲精品一区二区三区在线观看 | 成人免费视频网站在线观看 | 国产二区免费视频 | 欧美精品首页 | 久久久久久久影视 | 亚洲精品乱码久久久久v最新版 | 日本 在线 视频 中文 有码 | 国产成人免费精品 | 在线亚洲播放 | 中文字幕免费在线 | 91高清免费看 | 国产精品久久久久久一区二区三区 | 中文字幕乱码在线播放 | 国产精品第52页 | 国产一区在线播放 | 婷婷丁香狠狠爱 | 国产伦理久久精品久久久久_ | 婷婷激情五月 | 欧美色图亚洲图片 | 黄色小说视频网站 | 亚洲免费视频观看 | 久久综合狠狠综合久久综合88 | 毛片区 | 91天堂素人约啪 | 中文字幕色婷婷在线视频 | 欧美日韩不卡在线 | 婷婷婷国产在线视频 | 天天干天天拍天天操 | 激情综合网色播五月 | 久久与婷婷 | 天天操狠狠操网站 | 欧美日韩久 | 亚洲综合一区二区精品导航 | 亚洲人成在线观看 | 亚洲最新精品 | 亚洲蜜桃av| 丰满少妇一级 | 色天天 | 九九九热精品免费视频观看网站 | 人人插人人费 | 亚洲丁香日韩 | 激情综合网五月婷婷 | 欧美巨大荫蒂茸毛毛人妖 | 免费av网站在线看 | 国产视频中文字幕在线观看 | 九九综合久久 | 精品国产一区二区三区久久影院 | 国产在线视频一区二区三区 | 精品久久久久亚洲 | 超碰在线人人爱 | 黄色三级在线看 | 免费福利在线观看 | www.夜色321.com| 在线观看日韩免费视频 | 天天操夜夜操国产精品 | 曰本免费av | 午夜精品久久久久久久99婷婷 | 黄色av一区二区三区 | 色综合人人| 国产日韩精品欧美 | 99久久精品免费视频 | 天天操天天能 | 日韩av影视| 97在线精品国自产拍中文 | 日本少妇视频 | 日韩高清片 | 亚洲成熟女人毛片在线 | 久久国际影院 | 久久理论电影 | 欧美日韩高清在线一区 | 国产精品成人一区二区三区吃奶 | 粉嫩av一区二区三区四区五区 | 九九热精品国产 | 一区三区视频 | 国产色道 | 日韩视频1区| 狂野欧美激情性xxxx欧美 | 欧美久久成人 | 国产精品99久久99久久久二8 | 国产高清一级 | av性在线| 久久精品国产久精国产 | 欧美a级一区二区 | 网站在线观看你们懂的 | 久久999精品 | 国产精品午夜免费福利视频 | 91视频免费网站 | 中国一区二区视频 | 国产精品影音先锋 | 国产一区二区三精品久久久无广告 | 丁香 久久 综合 | 久久桃花网 | 国产精品久久久久久久久久久久午 | 久久久久久久久精 | 天天操天天拍 | 久草在在线 | 一区二区视频欧美 | 日韩av快播电影网 | 欧美一级日韩免费不卡 | 成人午夜精品久久久久久久3d | 一级性av | 亚洲91网站 | www.亚洲激情.com | 久久蜜臀av| 国产一线在线 | av一本久道久久波多野结衣 | 亚洲传媒在线 | 久久综合九色九九 | 久久国产精品久久久 | 精品一区二区免费在线观看 | 国产精品理论在线观看 | 97精品国产97久久久久久粉红 | 日本爱爱免费 | 精品久久久久一区二区国产 | 一区 在线 影院 | 亚洲午夜精品久久久久久久久久久久 | 超碰个人在线 | 亚洲视频久久久久 | 久久大香线蕉app | 国产最新在线视频 | 最近更新好看的中文字幕 | 久久综合中文字幕 | 亚洲视频一级 | 国产在线观看你懂得 | 国产精品观看视频 | 999ZYZ玖玖资源站永久 | 中文字幕乱码电影 | 97超碰人人澡人人爱 | 免费亚洲视频在线观看 | 精品不卡视频 | 91麻豆福利 | 九九精品无码 | 国产精品18久久久久久久网站 | 一区二区视频免费在线观看 | 日韩中文字幕在线 | 国产免费专区 | 久久精品www人人爽人人 | 久久久久久久网 | 国产国语在线 |