久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

注释驱动的 Spring cache 缓存介绍--转载

發布時間:2025/4/5 javascript 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 注释驱动的 Spring cache 缓存介绍--转载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概述

Spring 3.1 引入了激動人心的基于注釋(annotation)的緩存(cache)技術,它本質上不是一個具體的緩存實現方案(例如 EHCache 或者 OSCache),而是一個對緩存使用的抽象,通過在既有代碼中添加少量它定義的各種 annotation,即能夠達到緩存方法的返回對象的效果。

Spring 的緩存技術還具備相當的靈活性,不僅能夠使用 SpEL(Spring Expression Language)來定義緩存的 key 和各種 condition,還提供開箱即用的緩存臨時存儲方案,也支持和主流的專業緩存例如 EHCache 集成。

其特點總結如下:

  • 通過少量的配置 annotation 注釋即可使得既有代碼支持緩存
  • 支持開箱即用 Out-Of-The-Box,即不用安裝和部署額外第三方組件即可使用緩存
  • 支持 Spring Express Language,能使用對象的任何屬性或者方法來定義緩存的 key 和 condition
  • 支持 AspectJ,并通過其實現任何方法的緩存支持
  • 支持自定義 key 和自定義緩存管理者,具有相當的靈活性和擴展性

本文將針對上述特點對 Spring cache 進行詳細的介紹,主要通過一個簡單的例子和原理介紹展開,然后我們將一起看一個比較實際的緩存例子,最后會介紹 spring cache 的使用限制和注意事項。OK,Let ’ s begin!

原來我們是怎么做的

這里先展示一個完全自定義的緩存實現,即不用任何第三方的組件來實現某種對象的內存緩存。

場景是:對一個賬號查詢方法做緩存,以賬號名稱為 key,賬號對象為 value,當以相同的賬號名稱查詢賬號的時候,直接從緩存中返回結果,否則更新緩存。賬號查詢服務還支持 reload 緩存(即清空緩存)。

首先定義一個實體類:賬號類,具備基本的 id 和 name 屬性,且具備 getter 和 setter 方法

清單 1. Account.java
package cacheOfAnno; public class Account { private int id; private String name; public Account(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

然后定義一個緩存管理器,這個管理器負責實現緩存邏輯,支持對象的增加、修改和刪除,支持值對象的泛型。如下:

清單 2. MyCacheManager.java
package oldcache; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; public class MyCacheManager<T> { private Map<String,T> cache = new ConcurrentHashMap<String,T>(); public T getValue(Object key) { return cache.get(key); } public void addOrUpdateCache(String key,T value) { cache.put(key, value); } public void evictCache(String key) {// 根據 key 來刪除緩存中的一條記錄if(cache.containsKey(key)) { cache.remove(key); } } public void evictCache() {// 清空緩存中的所有記錄cache.clear(); } }

好,現在我們有了實體類和一個緩存管理器,還需要一個提供賬號查詢的服務類,此服務類使用緩存管理器來支持賬號查詢緩存,如下:

清單 3. MyAccountService.java
package oldcache; import cacheOfAnno.Account; public class MyAccountService { private MyCacheManager<Account> cacheManager; public MyAccountService() { cacheManager = new MyCacheManager<Account>();// 構造一個緩存管理器} public Account getAccountByName(String acctName) { Account result = cacheManager.getValue(acctName);// 首先查詢緩存if(result!=null) { System.out.println("get from cache..."+acctName); return result;// 如果在緩存中,則直接返回緩存的結果} result = getFromDB(acctName);// 否則到數據庫中查詢if(result!=null) {// 將數據庫查詢的結果更新到緩存中cacheManager.addOrUpdateCache(acctName, result); } return result; } public void reload() { cacheManager.evictCache(); } private Account getFromDB(String acctName) { System.out.println("real querying db..."+acctName); return new Account(acctName); } }

現在我們開始寫一個測試類,用于測試剛才的緩存是否有效

清單 4. Main.java
package oldcache; public class Main { public static void main(String[] args) { MyAccountService s = new MyAccountService(); // 開始查詢賬號s.getAccountByName("somebody");// 第一次查詢,應該是數據庫查詢s.getAccountByName("somebody");// 第二次查詢,應該直接從緩存返回s.reload();// 重置緩存System.out.println("after reload..."); s.getAccountByName("somebody");// 應該是數據庫查詢s.getAccountByName("somebody");// 第二次查詢,應該直接從緩存返回} }

按照分析,執行結果應該是:首先從數據庫查詢,然后直接返回緩存中的結果,重置緩存后,應該先從數據庫查詢,然后返回緩存中的結果,實際的執行結果如下:

清單 5. 運行結果
real querying db...somebody// 第一次從數據庫加載get from cache...somebody// 第二次從緩存加載after reload...// 清空緩存real querying db...somebody// 又從數據庫加載get from cache...somebody// 從緩存加載

可以看出我們的緩存起效了,但是這種自定義的緩存方案有如下劣勢:

  • 緩存代碼和業務代碼耦合度太高,如上面的例子,AccountService 中的 getAccountByName()方法中有了太多緩存的邏輯,不便于維護和變更
  • 不靈活,這種緩存方案不支持按照某種條件的緩存,比如只有某種類型的賬號才需要緩存,這種需求會導致代碼的變更
  • 緩存的存儲這塊寫的比較死,不能靈活的切換為使用第三方的緩存模塊

如果你的代碼中有上述代碼的影子,那么你可以考慮按照下面的介紹來優化一下你的代碼結構了,也可以說是簡化,你會發現,你的代碼會變得優雅的多!

Hello World,注釋驅動的 Spring Cache

Hello World 的實現目標

本 Hello World 類似于其他任何的 Hello World 程序,從最簡單實用的角度展現 spring cache 的魅力,它基于剛才自定義緩存方案的實體類 Account.java,重新定義了 AccountService.java 和測試類 Main.java(注意這個例子不用自己定義緩存管理器,因為 spring 已經提供了缺省實現)

需要的 jar 包

為了實用 spring cache 緩存方案,在工程的 classpath 必須具備下列 jar 包。

圖 1. 工程依賴的 jar 包圖

注意這里我引入的是最新的 spring 3.2.0.M1 版本 jar 包,其實只要是 spring 3.1 以上,都支持 spring cache。其中 spring-context-*.jar 包含了 cache 需要的類。

定義實體類、服務類和相關配置文件

實體類就是上面自定義緩存方案定義的 Account.java,這里重新定義了服務類,如下:

清單 6. AccountService.java
package cacheOfAnno; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; public class AccountService { @Cacheable(value="accountCache")// 使用了一個緩存名叫 accountCache public Account getAccountByName(String userName) { // 方法內部實現不考慮緩存邏輯,直接實現業務System.out.println("real query account."+userName); return getFromDB(userName); } private Account getFromDB(String acctName) { System.out.println("real querying db..."+acctName); return new Account(acctName); } }

注意,此類的 getAccountByName 方法上有一個注釋 annotation,即 @Cacheable(value=”accountCache”),這個注釋的意思是,當調用這個方法的時候,會從一個名叫 accountCache 的緩存中查詢,如果沒有,則執行實際的方法(即查詢數據庫),并將執行的結果存入緩存中,否則返回緩存中的對象。這里的緩存中的 key 就是參數 userName,value 就是 Account 對象。“accountCache”緩存是在 spring*.xml 中定義的名稱。

好,因為加入了 spring,所以我們還需要一個 spring 的配置文件來支持基于注釋的緩存

清單 7. Spring-cache-anno.xml
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:cache="http://www.springframework.org/schema/cache"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd"> <cache:annotation-driven /><bean id="accountServiceBean" class="cacheOfAnno.AccountService"/> <!-- generic cache manager --> <bean id="cacheManager" class="org.springframework.cache.support.SimpleCacheManager"><property name="caches"> <set> <bean class="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean"p:name="default" /> <bean class="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean"p:name="accountCache" /> </set> </property> </bean> </beans>

注意這個 spring 配置文件有一個關鍵的支持緩存的配置項:<cache:annotation-driven />,這個配置項缺省使用了一個名字叫 cacheManager 的緩存管理器,這個緩存管理器有一個 spring 的缺省實現,即 org.springframework.cache.support.SimpleCacheManager,這個緩存管理器實現了我們剛剛自定義的緩存管理器的邏輯,它需要配置一個屬性 caches,即此緩存管理器管理的緩存集合,除了缺省的名字叫 default 的緩存,我們還自定義了一個名字叫 accountCache 的緩存,使用了缺省的內存存儲方案 ConcurrentMapCacheFactoryBean,它是基于 java.util.concurrent.ConcurrentHashMap 的一個內存緩存實現方案。

OK,現在我們具備了測試條件,測試代碼如下:

清單 8. Main.java
package cacheOfAnno; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Main { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); // 第一次查詢,應該走數據庫System.out.print("first query..."); s.getAccountByName("somebody"); // 第二次查詢,應該不查數據庫,直接返回緩存的值System.out.print("second query..."); s.getAccountByName("somebody"); System.out.println(); } }

上面的測試代碼主要進行了兩次查詢,第一次應該會查詢數據庫,第二次應該返回緩存,不再查數據庫,我們執行一下,看看結果

清單 9. 執行結果
first query...real query account.somebody// 第一次查詢real querying db...somebody// 對數據庫進行了查詢second query...// 第二次查詢,沒有打印數據庫查詢日志,直接返回了緩存中的結果

可以看出我們設置的基于注釋的緩存起作用了,而在 AccountService.java 的代碼中,我們沒有看到任何的緩存邏輯代碼,只有一行注釋:@Cacheable(value="accountCache"),就實現了基本的緩存方案,是不是很強大?

如何清空緩存

好,到目前為止,我們的 spring cache 緩存程序已經運行成功了,但是還不完美,因為還缺少一個重要的緩存管理邏輯:清空緩存,當賬號數據發生變更,那么必須要清空某個緩存,另外還需要定期的清空所有緩存,以保證緩存數據的可靠性。

為了加入清空緩存的邏輯,我們只要對 AccountService.java 進行修改,從業務邏輯的角度上看,它有兩個需要清空緩存的地方

  • 當外部調用更新了賬號,則我們需要更新此賬號對應的緩存
  • 當外部調用說明重新加載,則我們需要清空所有緩存
清單 10. AccountService.java

點擊查看代碼清單

清單 11. Main.java

點擊查看代碼清單

清單 12. 運行結果
first query...real querying db...somebody second query... start testing clear cache... real querying db...somebody1 real querying db...somebody2 real update db...somebody1 real querying db...somebody1 real querying db...somebody1 real querying db...somebody2

結果和我們期望的一致,所以,我們可以看出,spring cache 清空緩存的方法很簡單,就是通過 @CacheEvict 注釋來標記要清空緩存的方法,當這個方法被調用后,即會清空緩存。注意其中一個 @CacheEvict(value=”accountCache”,key=”#account.getName()”),其中的 Key 是用來指定緩存的 key 的,這里因為我們保存的時候用的是 account 對象的 name 字段,所以這里還需要從參數 account 對象中獲取 name 的值來作為 key,前面的 # 號代表這是一個 SpEL 表達式,此表達式可以遍歷方法的參數對象,具體語法可以參考 Spring 的相關文檔手冊。

如何按照條件操作緩存

前面介紹的緩存方法,沒有任何條件,即所有對 accountService 對象的 getAccountByName 方法的調用都會起動緩存效果,不管參數是什么值,如果有一個需求,就是只有賬號名稱的長度小于等于 4 的情況下,才做緩存,大于 4 的不使用緩存,那怎么實現呢?

Spring cache 提供了一個很好的方法,那就是基于 SpEL 表達式的 condition 定義,這個 condition 是 @Cacheable 注釋的一個屬性,下面我來演示一下

清單 13. AccountService.java(getAccountByName 方法修訂,支持條件)
@Cacheable(value="accountCache",condition="#userName.length() <= 4")// 緩存名叫 accountCache public Account getAccountByName(String userName) { // 方法內部實現不考慮緩存邏輯,直接實現業務return getFromDB(userName); }

注意其中的 condition=”#userName.length() <=4”,這里使用了 SpEL 表達式訪問了參數 userName 對象的 length() 方法,條件表達式返回一個布爾值,true/false,當條件為 true,則進行緩存操作,否則直接調用方法執行的返回結果。

清單 14. 測試方法
s.getAccountByName("somebody");// 長度大于 4,不會被緩存s.getAccountByName("sbd");// 長度小于 4,會被緩存s.getAccountByName("somebody");// 還是查詢數據庫s.getAccountByName("sbd");// 會從緩存返回
清單 15. 運行結果
real querying db...somebody real querying db...sbd real querying db...somebody

可見對長度大于 4 的賬號名 (somebody) 沒有緩存,每次都查詢數據庫。

如果有多個參數,如何進行 key 的組合

假設 AccountService 現在有一個需求,要求根據賬號名、密碼和是否發送日志查詢賬號信息,很明顯,這里我們需要根據賬號名、密碼對賬號對象進行緩存,而第三個參數“是否發送日志”對緩存沒有任何影響。所以,我們可以利用 SpEL 表達式對緩存 key 進行設計

清單 16. Account.java(增加 password 屬性)
private String password; public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }
清單 17. AccountService.java(增加 getAccount 方法,支持組合 key)
@Cacheable(value="accountCache",key="#userName.concat(#password)") public Account getAccount(String userName,String password,boolean sendLog) { // 方法內部實現不考慮緩存邏輯,直接實現業務return getFromDB(userName,password); }

注意上面的 key 屬性,其中引用了方法的兩個參數 userName 和 password,而 sendLog 屬性沒有考慮,因為其對緩存沒有影響。

清單 18. Main.java
public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); s.getAccount("somebody", "123456", true);// 應該查詢數據庫s.getAccount("somebody", "123456", true);// 應該走緩存s.getAccount("somebody", "123456", false);// 應該走緩存s.getAccount("somebody", "654321", true);// 應該查詢數據庫s.getAccount("somebody", "654321", true);// 應該走緩存}

上述測試,是采用了相同的賬號,不同的密碼組合進行查詢,那么一共有兩種組合情況,所以針對數據庫的查詢應該只有兩次。

清單 19. 運行結果
real querying db...userName=somebody password=123456 real querying db...userName=somebody password=654321

和我們預期的一致。

如何做到:既要保證方法被調用,又希望結果被緩存

根據前面的例子,我們知道,如果使用了 @Cacheable 注釋,則當重復使用相同參數調用方法的時候,方法本身不會被調用執行,即方法本身被略過了,取而代之的是方法的結果直接從緩存中找到并返回了。

現實中并不總是如此,有些情況下我們希望方法一定會被調用,因為其除了返回一個結果,還做了其他事情,例如記錄日志,調用接口等,這個時候,我們可以用 @CachePut 注釋,這個注釋可以確保方法被執行,同時方法的返回值也被記錄到緩存中。

清單 20. AccountService.java
@Cacheable(value="accountCache")// 使用了一個緩存名叫 accountCache public Account getAccountByName(String userName) { // 方法內部實現不考慮緩存邏輯,直接實現業務return getFromDB(userName); } @CachePut(value="accountCache",key="#account.getName()")// 更新 accountCache 緩存public Account updateAccount(Account account) { return updateDB(account); } private Account updateDB(Account account) { System.out.println("real updating db..."+account.getName()); return account; }
清單 21. Main.java
public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); Account account = s.getAccountByName("someone"); account.setPassword("123"); s.updateAccount(account); account.setPassword("321"); s.updateAccount(account); account = s.getAccountByName("someone"); System.out.println(account.getPassword()); }

如上面的代碼所示,我們首先用 getAccountByName 方法查詢一個人 someone 的賬號,這個時候會查詢數據庫一次,但是也記錄到緩存中了。然后我們修改了密碼,調用了 updateAccount 方法,這個時候會執行數據庫的更新操作且記錄到緩存,我們再次修改密碼并調用 updateAccount 方法,然后通過 getAccountByName 方法查詢,這個時候,由于緩存中已經有數據,所以不會查詢數據庫,而是直接返回最新的數據,所以打印的密碼應該是“321”

清單 22. 運行結果
real querying db...someone real updating db...someone real updating db...someone 321

和分析的一樣,只查詢了一次數據庫,更新了兩次數據庫,最終的結果是最新的密碼。說明 @CachePut 確實可以保證方法被執行,且結果一定會被緩存。

@Cacheable、@CachePut、@CacheEvict 注釋介紹

通過上面的例子,我們可以看到 spring cache 主要使用兩個注釋標簽,即 @Cacheable、@CachePut 和 @CacheEvict,我們總結一下其作用和配置方法。

表 1. @Cacheable 作用和配置方法
@Cacheable 的作用主要針對方法配置,能夠根據方法的請求參數對其結果進行緩存
@Cacheable 主要的參數
value緩存的名稱,在 spring 配置文件中定義,必須指定至少一個例如:
@Cacheable(value=”mycache”) 或者?
@Cacheable(value={”cache1”,”cache2”}
key緩存的 key,可以為空,如果指定要按照 SpEL 表達式編寫,如果不指定,則缺省按照方法的所有參數進行組合例如:
@Cacheable(value=”testcache”,key=”#userName”)
condition緩存的條件,可以為空,使用 SpEL 編寫,返回 true 或者 false,只有為 true 才進行緩存例如:
@Cacheable(value=”testcache”,condition=”#userName.length()>2”)
表 2. @CachePut 作用和配置方法
@CachePut 的作用主要針對方法配置,能夠根據方法的請求參數對其結果進行緩存,和 @Cacheable 不同的是,它每次都會觸發真實方法的調用
@CachePut 主要的參數
value緩存的名稱,在 spring 配置文件中定義,必須指定至少一個例如:
@Cacheable(value=”mycache”) 或者?
@Cacheable(value={”cache1”,”cache2”}
key緩存的 key,可以為空,如果指定要按照 SpEL 表達式編寫,如果不指定,則缺省按照方法的所有參數進行組合例如:
@Cacheable(value=”testcache”,key=”#userName”)
condition緩存的條件,可以為空,使用 SpEL 編寫,返回 true 或者 false,只有為 true 才進行緩存例如:
@Cacheable(value=”testcache”,condition=”#userName.length()>2”)
表 3. @CacheEvict 作用和配置方法
@CachEvict 的作用主要針對方法配置,能夠根據一定的條件對緩存進行清空
@CacheEvict 主要的參數
value緩存的名稱,在 spring 配置文件中定義,必須指定至少一個例如:
@CachEvict(value=”mycache”) 或者?
@CachEvict(value={”cache1”,”cache2”}
key緩存的 key,可以為空,如果指定要按照 SpEL 表達式編寫,如果不指定,則缺省按照方法的所有參數進行組合例如:
@CachEvict(value=”testcache”,key=”#userName”)
condition緩存的條件,可以為空,使用 SpEL 編寫,返回 true 或者 false,只有為 true 才清空緩存例如:
@CachEvict(value=”testcache”,
condition=”#userName.length()>2”)
allEntries是否清空所有緩存內容,缺省為 false,如果指定為 true,則方法調用后將立即清空所有緩存例如:
@CachEvict(value=”testcache”,allEntries=true)
beforeInvocation是否在方法執行前就清空,缺省為 false,如果指定為 true,則在方法還沒有執行的時候就清空緩存,缺省情況下,如果方法執行拋出異常,則不會清空緩存例如:
@CachEvict(value=”testcache”,beforeInvocation=true)

基本原理

和 spring 的事務管理類似,spring cache 的關鍵原理就是 spring AOP,通過 spring AOP,其實現了在方法調用前、調用后獲取方法的入參和返回值,進而實現了緩存的邏輯。我們來看一下下面這個圖:

圖 2. 原始方法調用圖

上圖顯示,當客戶端“Calling code”調用一個普通類 Plain Object 的 foo() 方法的時候,是直接作用在 pojo 類自身對象上的,客戶端擁有的是被調用者的直接的引用。

而 Spring cache 利用了 Spring AOP 的動態代理技術,即當客戶端嘗試調用 pojo 的 foo()方法的時候,給他的不是 pojo 自身的引用,而是一個動態生成的代理類

圖 3. 動態代理調用圖

如上圖所示,這個時候,實際客戶端擁有的是一個代理的引用,那么在調用 foo() 方法的時候,會首先調用 proxy 的 foo() 方法,這個時候 proxy 可以整體控制實際的 pojo.foo() 方法的入參和返回值,比如緩存結果,比如直接略過執行實際的 foo() 方法等,都是可以輕松做到的。

擴展性

直到現在,我們已經學會了如何使用開箱即用的 spring cache,這基本能夠滿足一般應用對緩存的需求,但現實總是很復雜,當你的用戶量上去或者性能跟不上,總需要進行擴展,這個時候你或許對其提供的內存緩存不滿意了,因為其不支持高可用性,也不具備持久化數據能力,這個時候,你就需要自定義你的緩存方案了,還好,spring 也想到了這一點。

我們先不考慮如何持久化緩存,畢竟這種第三方的實現方案很多,我們要考慮的是,怎么利用 spring 提供的擴展點實現我們自己的緩存,且在不改原來已有代碼的情況下進行擴展。

首先,我們需要提供一個 CacheManager 接口的實現,這個接口告訴 spring 有哪些 cache 實例,spring 會根據 cache 的名字查找 cache 的實例。另外還需要自己實現 Cache 接口,Cache 接口負責實際的緩存邏輯,例如增加鍵值對、存儲、查詢和清空等。利用 Cache 接口,我們可以對接任何第三方的緩存系統,例如 EHCache、OSCache,甚至一些內存數據庫例如 memcache 或者 h2db 等。下面我舉一個簡單的例子說明如何做。

清單 23. MyCacheManager
package cacheOfAnno; import java.util.Collection; import org.springframework.cache.support.AbstractCacheManager; public class MyCacheManager extends AbstractCacheManager { private Collection<? extends MyCache> caches; /** * Specify the collection of Cache instances to use for this CacheManager. */ public void setCaches(Collection<? extends MyCache> caches) { this.caches = caches; } @Override protected Collection<? extends MyCache> loadCaches() { return this.caches; } }

上面的自定義的 CacheManager 實際繼承了 spring 內置的 AbstractCacheManager,實際上僅僅管理 MyCache 類的實例。

清單 24. MyCache
package cacheOfAnno; import java.util.HashMap; import java.util.Map; import org.springframework.cache.Cache; import org.springframework.cache.support.SimpleValueWrapper; public class MyCache implements Cache { private String name; private Map<String,Account> store = new HashMap<String,Account>();; public MyCache() { } public MyCache(String name) { this.name = name; } @Override public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public Object getNativeCache() { return store; } @Override public ValueWrapper get(Object key) { ValueWrapper result = null; Account thevalue = store.get(key); if(thevalue!=null) { thevalue.setPassword("from mycache:"+name); result = new SimpleValueWrapper(thevalue); } return result; } @Override public void put(Object key, Object value) { Account thevalue = (Account)value; store.put((String)key, thevalue); } @Override public void evict(Object key) { } @Override public void clear() { } }

上面的自定義緩存只實現了很簡單的邏輯,但這是我們自己做的,也很令人激動是不是,主要看 get 和 put 方法,其中的 get 方法留了一個后門,即所有的從緩存查詢返回的對象都將其 password 字段設置為一個特殊的值,這樣我們等下就能演示“我們的緩存確實在起作用!”了。

這還不夠,spring 還不知道我們寫了這些東西,需要通過 spring*.xml 配置文件告訴它

清單 25. Spring-cache-anno.xml
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:cache="http://www.springframework.org/schema/cache"xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd"> <cache:annotation-driven /> <bean id="accountServiceBean" class="cacheOfAnno.AccountService"/> <!-- generic cache manager --> <bean id="cacheManager" class="cacheOfAnno.MyCacheManager"><property name="caches"> <set> <bean class="cacheOfAnno.MyCache"p:name="accountCache" /> </set> </property> </bean> </beans>

注意上面配置文件的黑體字,這些配置說明了我們的 cacheManager 和我們自己的 cache 實例。

好,什么都不說,測試!

清單 26. Main.java
public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); Account account = s.getAccountByName("someone"); System.out.println("passwd="+account.getPassword()); account = s.getAccountByName("someone"); System.out.println("passwd="+account.getPassword()); }

上面的測試代碼主要是先調用 getAccountByName 進行一次查詢,這會調用數據庫查詢,然后緩存到 mycache 中,然后我打印密碼,應該是空的;下面我再次查詢 someone 的賬號,這個時候會從 mycache 中返回緩存的實例,記得上面的后門么?我們修改了密碼,所以這個時候打印的密碼應該是一個特殊的值

清單 27. 運行結果
real querying db...someone passwd=null passwd=from mycache:accountCache

結果符合預期,即第一次查詢數據庫,且密碼為空,第二次打印了一個特殊的密碼。說明我們的 myCache 起作用了。

注意和限制

基于 proxy 的 spring aop 帶來的內部調用問題

上面介紹過 spring cache 的原理,即它是基于動態生成的 proxy 代理機制來對方法的調用進行切面,這里關鍵點是對象的引用問題,如果對象的方法是內部調用(即 this 引用)而不是外部引用,則會導致 proxy 失效,那么我們的切面就失效,也就是說上面定義的各種注釋包括 @Cacheable、@CachePut 和 @CacheEvict 都會失效,我們來演示一下。

清單 28. AccountService.java
public Account getAccountByName2(String userName) { return this.getAccountByName(userName); } @Cacheable(value="accountCache")// 使用了一個緩存名叫 accountCache public Account getAccountByName(String userName) { // 方法內部實現不考慮緩存邏輯,直接實現業務return getFromDB(userName); }

上面我們定義了一個新的方法 getAccountByName2,其自身調用了 getAccountByName 方法,這個時候,發生的是內部調用(this),所以沒有走 proxy,導致 spring cache 失效

清單 29. Main.java
public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); s.getAccountByName2("someone"); s.getAccountByName2("someone"); s.getAccountByName2("someone"); }
清單 30. 運行結果
real querying db...someone real querying db...someone real querying db...someone

可見,結果是每次都查詢數據庫,緩存沒起作用。要避免這個問題,就是要避免對緩存方法的內部調用,或者避免使用基于 proxy 的 AOP 模式,可以使用基于 aspectJ 的 AOP 模式來解決這個問題。

@CacheEvict 的可靠性問題

我們看到,@CacheEvict 注釋有一個屬性 beforeInvocation,缺省為 false,即缺省情況下,都是在實際的方法執行完成后,才對緩存進行清空操作。期間如果執行方法出現異常,則會導致緩存清空不被執行。我們演示一下

清單 31. AccountService.java
@CacheEvict(value="accountCache",allEntries=true)// 清空 accountCache 緩存public void reload() { throw new RuntimeException(); }

注意上面的代碼,我們在 reload 的時候拋出了運行期異常,這會導致清空緩存失敗。

清單 32. Main.java
public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "spring-cache-anno.xml");// 加載 spring 配置文件AccountService s = (AccountService) context.getBean("accountServiceBean"); s.getAccountByName("someone"); s.getAccountByName("someone"); try { s.reload(); } catch (Exception e) { } s.getAccountByName("someone"); }

上面的測試代碼先查詢了兩次,然后 reload,然后再查詢一次,結果應該是只有第一次查詢走了數據庫,其他兩次查詢都從緩存,第三次也走緩存因為 reload 失敗了。

清單 33. 運行結果
real querying db...someone

和預期一樣。那么我們如何避免這個問題呢?我們可以用 @CacheEvict 注釋提供的 beforeInvocation 屬性,將其設置為 true,這樣,在方法執行前我們的緩存就被清空了。可以確保緩存被清空。

清單 34. AccountService.java
@CacheEvict(value="accountCache",allEntries=true,beforeInvocation=true)// 清空 accountCache 緩存public void reload() { throw new RuntimeException(); }

注意上面的代碼,我們在 @CacheEvict 注釋中加了 beforeInvocation 屬性,確保緩存被清空。

執行相同的測試代碼

清單 35. 運行結果
real querying db...someone real querying db...someone

這樣,第一次和第三次都從數據庫取數據了,緩存清空有效。

非 public 方法問題

和內部調用問題類似,非 public 方法如果想實現基于注釋的緩存,必須采用基于 AspectJ 的 AOP 機制,這里限于篇幅不再細述。

其他技巧

Dummy CacheManager 的配置和作用

有的時候,我們在代碼遷移、調試或者部署的時候,恰好沒有 cache 容器,比如 memcache 還不具備條件,h2db 還沒有裝好等,如果這個時候你想調試代碼,豈不是要瘋掉?這里有一個辦法,在不具備緩存條件的時候,在不改代碼的情況下,禁用緩存。

方法就是修改 spring*.xml 配置文件,設置一個找不到緩存就不做任何操作的標志位,如下

清單 36. Spring-cache-anno.xml
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:cache="http://www.springframework.org/schema/cache"xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd"> <cache:annotation-driven /> <bean id="accountServiceBean" class="cacheOfAnno.AccountService"/> <!-- generic cache manager --> <bean id="simpleCacheManager" class="org.springframework.cache.support.SimpleCacheManager"> <property name="caches"> <set> <bean class="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean"p:name="default" /> </set> </property> </bean> <!-- dummy cacheManager --> <bean id="cacheManager" class="org.springframework.cache.support.CompositeCacheManager"><property name="cacheManagers"> <list> <ref bean="simpleCacheManager" /> </list> </property> <property name="fallbackToNoOpCache" value="true" /> </bean> </beans>

注意以前的 cacheManager 變為了 simpleCacheManager,且沒有配置 accountCache 實例,后面的 cacheManager 的實例是一個 CompositeCacheManager,他利用了前面的 simpleCacheManager 進行查詢,如果查詢不到,則根據標志位 fallbackToNoOpCache 來判斷是否不做任何緩存操作。

清單 37. 運行結果
real querying db...someone real querying db...someone real querying db...someone

可以看出,緩存失效。每次都查詢數據庫。因為我們沒有配置它需要的 accountCache 實例。

如果將上面 xml 配置文件的 fallbackToNoOpCache 設置為 false,再次運行,則會得到

清單 38. 運行結果
Exception in thread "main" java.lang.IllegalArgumentException: Cannot find cache named [accountCache] for CacheableOperation [public cacheOfAnno.Account cacheOfAnno.AccountService.getAccountByName(java.lang.String)]caches=[accountCache] | condition='' | key=''

可見,在找不到 accountCache,且沒有將 fallbackToNoOpCache 設置為 true 的情況下,系統會拋出異常。

小結

總之,注釋驅動的 spring cache 能夠極大的減少我們編寫常見緩存的代碼量,通過少量的注釋標簽和配置文件,即可達到使代碼具備緩存的能力。且具備很好的靈活性和擴展性。但是我們也應該看到,spring cache 由于急于 spring AOP 技術,尤其是動態的 proxy 技術,導致其不能很好的支持方法的內部調用或者非 public 方法的緩存設置,當然這都是可以解決的問題,通過學習這個技術,我們能夠認識到,AOP 技術的應用還是很廣泛的,如果有興趣,我相信你也能基于 AOP 實現自己的緩存方案。

原文:http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache/

轉載于:https://www.cnblogs.com/davidwang456/p/4231202.html

總結

以上是生活随笔為你收集整理的注释驱动的 Spring cache 缓存介绍--转载的全部內容,希望文章能夠幫你解決所遇到的問題。

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

成人无码精品1区2区3区免费看 | 红桃av一区二区三区在线无码av | 色综合视频一区二区三区 | 国产在线一区二区三区四区五区 | 熟妇人妻中文av无码 | 野外少妇愉情中文字幕 | 久久国产精品二国产精品 | 亚洲熟悉妇女xxx妇女av | 久久久中文字幕日本无吗 | 精品欧洲av无码一区二区三区 | 欧美喷潮久久久xxxxx | 久久国产精品偷任你爽任你 | 爽爽影院免费观看 | 色婷婷av一区二区三区之红樱桃 | 精品国精品国产自在久国产87 | 日韩视频 中文字幕 视频一区 | 99久久婷婷国产综合精品青草免费 | 女人被男人躁得好爽免费视频 | 午夜无码人妻av大片色欲 | 久久久久久久人妻无码中文字幕爆 | 人妻少妇被猛烈进入中文字幕 | 又紧又大又爽精品一区二区 | 亚洲成色www久久网站 | 亚洲精品欧美二区三区中文字幕 | 国内丰满熟女出轨videos | 粗大的内捧猛烈进出视频 | 精品日本一区二区三区在线观看 | 国产高清av在线播放 | 国产欧美亚洲精品a | 无码帝国www无码专区色综合 | 成人无码精品一区二区三区 | 日本又色又爽又黄的a片18禁 | 精品人妻人人做人人爽夜夜爽 | 国产真人无遮挡作爱免费视频 | 伦伦影院午夜理论片 | 成人片黄网站色大片免费观看 | 国产成人一区二区三区别 | 国产极品美女高潮无套在线观看 | 欧美精品免费观看二区 | 一区二区传媒有限公司 | 国产成人无码一二三区视频 | 午夜理论片yy44880影院 | 国产精品-区区久久久狼 | 4hu四虎永久在线观看 | 国产精品免费大片 | 永久免费精品精品永久-夜色 | 亚洲人亚洲人成电影网站色 | 日日麻批免费40分钟无码 | 欧美日韩久久久精品a片 | 精品国产精品久久一区免费式 | 51国偷自产一区二区三区 | 欧美人与禽猛交狂配 | 久久精品人人做人人综合 | 欧美熟妇另类久久久久久多毛 | 欧美日韩视频无码一区二区三 | 2019午夜福利不卡片在线 | 成人无码影片精品久久久 | 色欲久久久天天天综合网精品 | 131美女爱做视频 | 99精品久久毛片a片 | 日产国产精品亚洲系列 | 精品国精品国产自在久国产87 | 久久99精品久久久久久 | 国产人妻精品一区二区三区不卡 | 国内老熟妇对白xxxxhd | 亚洲欧美精品aaaaaa片 | 久久精品国产精品国产精品污 | 国産精品久久久久久久 | 日韩av无码中文无码电影 | 亚洲成在人网站无码天堂 | 亚洲色欲久久久综合网东京热 | 娇妻被黑人粗大高潮白浆 | 国产午夜无码精品免费看 | 国产人妻久久精品二区三区老狼 | 伊人久久大香线焦av综合影院 | 四虎4hu永久免费 | 欧美丰满少妇xxxx性 | 成人av无码一区二区三区 | 亚洲 激情 小说 另类 欧美 | 亚洲中文字幕乱码av波多ji | 妺妺窝人体色www在线小说 | 高潮毛片无遮挡高清免费视频 | 少妇高潮喷潮久久久影院 | 暴力强奷在线播放无码 | 久久人人爽人人人人片 | 激情国产av做激情国产爱 | 精品aⅴ一区二区三区 | 亚洲日本va中文字幕 | 国产精品.xx视频.xxtv | 中文字幕日产无线码一区 | 国产欧美亚洲精品a | 婷婷综合久久中文字幕蜜桃三电影 | www国产亚洲精品久久久日本 | 国产午夜无码视频在线观看 | 国产香蕉尹人综合在线观看 | 性色欲网站人妻丰满中文久久不卡 | 乱人伦中文视频在线观看 | 国产成人综合在线女婷五月99播放 | 国产精品人人爽人人做我的可爱 | 久久国产自偷自偷免费一区调 | 久久久久成人精品免费播放动漫 | 国产另类ts人妖一区二区 | 亚洲人成网站在线播放942 | 人人爽人人爽人人片av亚洲 | 99精品视频在线观看免费 | 天天躁夜夜躁狠狠是什么心态 | 无码乱肉视频免费大全合集 | 国产欧美精品一区二区三区 | 永久免费观看国产裸体美女 | 久久99精品国产.久久久久 | 日韩视频 中文字幕 视频一区 | 亚洲色无码一区二区三区 | 国产亚洲欧美日韩亚洲中文色 | 久久久久亚洲精品男人的天堂 | 荫蒂被男人添的好舒服爽免费视频 | 精品国产青草久久久久福利 | 无码国产乱人伦偷精品视频 | 无套内谢的新婚少妇国语播放 | 中文字幕精品av一区二区五区 | 国产精品无码久久av | 欧美日韩色另类综合 | 久久久久免费看成人影片 | 漂亮人妻洗澡被公强 日日躁 | 国产在线无码精品电影网 | 又湿又紧又大又爽a视频国产 | 国产乱子伦视频在线播放 | 亚洲爆乳精品无码一区二区三区 | 日本护士xxxxhd少妇 | 日本在线高清不卡免费播放 | 天天做天天爱天天爽综合网 | 伦伦影院午夜理论片 | 日韩 欧美 动漫 国产 制服 | 97精品人妻一区二区三区香蕉 | 精品人妻人人做人人爽 | 亚洲精品国产第一综合99久久 | 国产成人人人97超碰超爽8 | 天海翼激烈高潮到腰振不止 | 中国女人内谢69xxxxxa片 | 久久久久免费看成人影片 | 国产精品人妻一区二区三区四 | 久久天天躁狠狠躁夜夜免费观看 | 人妻少妇精品无码专区动漫 | 国产精品丝袜黑色高跟鞋 | 久久久久久九九精品久 | av在线亚洲欧洲日产一区二区 | 精品国偷自产在线视频 | 一本色道久久综合亚洲精品不卡 | 疯狂三人交性欧美 | 国产做国产爱免费视频 | 18禁黄网站男男禁片免费观看 | 日本熟妇乱子伦xxxx | 国产成人无码a区在线观看视频app | 两性色午夜视频免费播放 | 黑森林福利视频导航 | 日韩欧美群交p片內射中文 | 国产成人午夜福利在线播放 | 色妞www精品免费视频 | 对白脏话肉麻粗话av | 久久综合久久自在自线精品自 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 国产凸凹视频一区二区 | 曰韩无码二三区中文字幕 | 久久精品人妻少妇一区二区三区 | 国产在线无码精品电影网 | 久久久精品欧美一区二区免费 | 久久精品国产一区二区三区肥胖 | 欧美黑人性暴力猛交喷水 | 亚洲日本va午夜在线电影 | 久久人人97超碰a片精品 | 人妻体内射精一区二区三四 | 色窝窝无码一区二区三区色欲 | yw尤物av无码国产在线观看 | 乱中年女人伦av三区 | 亚洲国产欧美日韩精品一区二区三区 | 欧美人与物videos另类 | 久久综合香蕉国产蜜臀av | 色综合久久网 | 国内综合精品午夜久久资源 | 国产亚av手机在线观看 | 精品一区二区三区无码免费视频 | 久青草影院在线观看国产 | 久久精品中文字幕大胸 | 国产乱码精品一品二品 | 精品无人国产偷自产在线 | 中文字幕人妻无码一夲道 | 亚洲国产精品一区二区第一页 | 国产一区二区三区精品视频 | 国产成人无码午夜视频在线观看 | 日韩精品无码免费一区二区三区 | 国产偷抇久久精品a片69 | 日韩亚洲欧美精品综合 | 人妻少妇被猛烈进入中文字幕 | 欧美日韩综合一区二区三区 | 免费国产黄网站在线观看 | 中文字幕中文有码在线 | 免费国产黄网站在线观看 | 午夜无码人妻av大片色欲 | 国产精品无码一区二区三区不卡 | 国产成人久久精品流白浆 | 国产精品爱久久久久久久 | 呦交小u女精品视频 | 国产乱人无码伦av在线a | 欧美一区二区三区视频在线观看 | 精品无码国产一区二区三区av | 亚洲国产欧美日韩精品一区二区三区 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 精品欧洲av无码一区二区三区 | 未满小14洗澡无码视频网站 | 欧美亚洲日韩国产人成在线播放 | 青青青手机频在线观看 | 久久 国产 尿 小便 嘘嘘 | 人妻少妇精品视频专区 | 欧美老熟妇乱xxxxx | 狠狠色噜噜狠狠狠7777奇米 | 夜夜躁日日躁狠狠久久av | 日本在线高清不卡免费播放 | 一二三四在线观看免费视频 | 亚洲成av人在线观看网址 | 国产农村乱对白刺激视频 | 日韩av无码中文无码电影 | aⅴ亚洲 日韩 色 图网站 播放 | 蜜桃av抽搐高潮一区二区 | 无码福利日韩神码福利片 | 狠狠色色综合网站 | 国产无遮挡又黄又爽又色 | 日韩无套无码精品 | 国产乱人偷精品人妻a片 | 久久国产精品偷任你爽任你 | 亚洲精品国产a久久久久久 | 日本va欧美va欧美va精品 | 全黄性性激高免费视频 | 国产口爆吞精在线视频 | 欧美第一黄网免费网站 | 丰满少妇女裸体bbw | 日韩av无码中文无码电影 | 国产精品久久久午夜夜伦鲁鲁 | 丰满诱人的人妻3 | 天天摸天天透天天添 | 狠狠噜狠狠狠狠丁香五月 | 男人的天堂2018无码 | 俺去俺来也在线www色官网 | 日日摸日日碰夜夜爽av | 亚洲七七久久桃花影院 | 装睡被陌生人摸出水好爽 | 伦伦影院午夜理论片 | 小泽玛莉亚一区二区视频在线 | 内射欧美老妇wbb | 亚洲欧美日韩国产精品一区二区 | 又大又黄又粗又爽的免费视频 | 亚洲国产一区二区三区在线观看 | 亚洲精品一区二区三区在线 | 色婷婷综合中文久久一本 | 亚洲日本一区二区三区在线 | 天堂а√在线中文在线 | 天天摸天天透天天添 | 99er热精品视频 | 久久成人a毛片免费观看网站 | 性色欲网站人妻丰满中文久久不卡 | √天堂中文官网8在线 | 亚洲成色www久久网站 | 精品夜夜澡人妻无码av蜜桃 | 国内精品一区二区三区不卡 | av无码久久久久不卡免费网站 | 亚洲中文字幕在线无码一区二区 | 精品人人妻人人澡人人爽人人 | 国产9 9在线 | 中文 | 日韩欧美中文字幕在线三区 | 精品 日韩 国产 欧美 视频 | 色婷婷欧美在线播放内射 | 欧美丰满熟妇xxxx性ppx人交 | 久久国产精品二国产精品 | 狠狠噜狠狠狠狠丁香五月 | 久久午夜夜伦鲁鲁片无码免费 | 少妇一晚三次一区二区三区 | 无码乱肉视频免费大全合集 | 无码人中文字幕 | 俄罗斯老熟妇色xxxx | 女高中生第一次破苞av | 免费无码的av片在线观看 | 少妇高潮一区二区三区99 | 丰满少妇弄高潮了www | 无码人妻av免费一区二区三区 | 日日夜夜撸啊撸 | 少妇无码av无码专区在线观看 | 丰满人妻被黑人猛烈进入 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲毛片av日韩av无码 | 天天躁夜夜躁狠狠是什么心态 | 在线精品亚洲一区二区 | 少妇被粗大的猛进出69影院 | 精品一区二区不卡无码av | 少妇一晚三次一区二区三区 | 成人欧美一区二区三区黑人 | 精品人人妻人人澡人人爽人人 | 午夜男女很黄的视频 | 欧美国产日韩亚洲中文 | 牲欲强的熟妇农村老妇女 | 精品熟女少妇av免费观看 | аⅴ资源天堂资源库在线 | 麻豆国产人妻欲求不满谁演的 | 精品久久久久久亚洲精品 | 高清不卡一区二区三区 | 美女黄网站人色视频免费国产 | 精品国精品国产自在久国产87 | 丰满妇女强制高潮18xxxx | 樱花草在线播放免费中文 | 久久午夜无码鲁丝片秋霞 | 久久久亚洲欧洲日产国码αv | 77777熟女视频在线观看 а天堂中文在线官网 | 丁香花在线影院观看在线播放 | 久久无码专区国产精品s | 日产国产精品亚洲系列 | 国产成人精品优优av | 国产av一区二区精品久久凹凸 | 日韩人妻无码一区二区三区久久99 | 人人爽人人澡人人人妻 | 午夜性刺激在线视频免费 | av人摸人人人澡人人超碰下载 | 国产精品a成v人在线播放 | 亚洲自偷精品视频自拍 | 国产精品va在线观看无码 | 国产舌乚八伦偷品w中 | 久久久精品456亚洲影院 | 熟妇人妻无码xxx视频 | 久久久精品人妻久久影视 | 在线视频网站www色 | 国产成人无码av在线影院 | 色一情一乱一伦一区二区三欧美 | 丰满少妇熟乱xxxxx视频 | 亚洲精品午夜国产va久久成人 | 在线观看欧美一区二区三区 | 久久久av男人的天堂 | 爆乳一区二区三区无码 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 久久综合久久自在自线精品自 | 国产精品亚洲а∨无码播放麻豆 | 人人妻人人澡人人爽精品欧美 | 日韩精品成人一区二区三区 | 亚洲精品一区二区三区大桥未久 | 俄罗斯老熟妇色xxxx | 装睡被陌生人摸出水好爽 | 高潮毛片无遮挡高清免费 | 国产精品无码mv在线观看 | 老头边吃奶边弄进去呻吟 | 国产黑色丝袜在线播放 | 欧美兽交xxxx×视频 | 久久久久久久人妻无码中文字幕爆 | 伊人久久婷婷五月综合97色 | 日日夜夜撸啊撸 | 中文无码伦av中文字幕 | 人妻有码中文字幕在线 | 精品国精品国产自在久国产87 | 亚洲无人区午夜福利码高清完整版 | 国产精品久久国产三级国 | 国产精品二区一区二区aⅴ污介绍 | 久久国产精品二国产精品 | 国精产品一品二品国精品69xx | 国精产品一品二品国精品69xx | 天下第一社区视频www日本 | 日日摸夜夜摸狠狠摸婷婷 | 最近中文2019字幕第二页 | 欧美国产亚洲日韩在线二区 | 欧美日本精品一区二区三区 | 伊人久久大香线蕉av一区二区 | 粗大的内捧猛烈进出视频 | 男女爱爱好爽视频免费看 | 日韩欧美成人免费观看 | 无套内谢的新婚少妇国语播放 | 四虎国产精品免费久久 | 国产口爆吞精在线视频 | 图片区 小说区 区 亚洲五月 | 久在线观看福利视频 | 在线视频网站www色 | 亚洲日韩精品欧美一区二区 | 欧美色就是色 | 曰韩少妇内射免费播放 | 无人区乱码一区二区三区 | 日韩精品乱码av一区二区 | 午夜丰满少妇性开放视频 | 日本又色又爽又黄的a片18禁 | 日本熟妇人妻xxxxx人hd | 无码精品国产va在线观看dvd | 久久午夜夜伦鲁鲁片无码免费 | 人妻少妇精品无码专区二区 | 99麻豆久久久国产精品免费 | 久久久精品成人免费观看 | 亚洲日本在线电影 | 亚洲成av人片在线观看无码不卡 | 国产精品无码mv在线观看 | 久久精品无码一区二区三区 | 久久精品女人的天堂av | 日本成熟视频免费视频 | 伊人久久婷婷五月综合97色 | 久久午夜无码鲁丝片 | 乌克兰少妇性做爰 | 麻豆国产97在线 | 欧洲 | 97夜夜澡人人双人人人喊 | www一区二区www免费 | 久久综合网欧美色妞网 | 精品aⅴ一区二区三区 | 欧洲欧美人成视频在线 | 亚洲自偷精品视频自拍 | 免费观看又污又黄的网站 | 人妻少妇被猛烈进入中文字幕 | 亚洲无人区午夜福利码高清完整版 | 国产精品永久免费视频 | 精品偷自拍另类在线观看 | 亚洲成a人一区二区三区 | 日本精品久久久久中文字幕 | www国产亚洲精品久久久日本 | 精品无码av一区二区三区 | 亚洲无人区午夜福利码高清完整版 | 少妇久久久久久人妻无码 | 女人色极品影院 | 在线欧美精品一区二区三区 | 无码乱肉视频免费大全合集 | 人妻夜夜爽天天爽三区 | 日本高清一区免费中文视频 | 亚洲色无码一区二区三区 | 2019nv天堂香蕉在线观看 | 精品无人国产偷自产在线 | 欧美国产日韩久久mv | 牲欲强的熟妇农村老妇女视频 | 天堂无码人妻精品一区二区三区 | 67194成是人免费无码 | 思思久久99热只有频精品66 | 青春草在线视频免费观看 | 高潮毛片无遮挡高清免费 | 国产无套粉嫩白浆在线 | 亚洲精品www久久久 | 亚洲国产综合无码一区 | 日本va欧美va欧美va精品 | 国产9 9在线 | 中文 | 久久久久se色偷偷亚洲精品av | 色妞www精品免费视频 | 中文字幕+乱码+中文字幕一区 | 国产精品久久久久7777 | 国产人妻人伦精品1国产丝袜 | 精品夜夜澡人妻无码av蜜桃 | 人妻插b视频一区二区三区 | 久久这里只有精品视频9 | 亚洲高清偷拍一区二区三区 | 狠狠cao日日穞夜夜穞av | 色欲久久久天天天综合网精品 | 无码任你躁久久久久久久 | 漂亮人妻洗澡被公强 日日躁 | 无码国模国产在线观看 | 久久午夜无码鲁丝片 | 亚欧洲精品在线视频免费观看 | 又湿又紧又大又爽a视频国产 | 久久久www成人免费毛片 | 国产又粗又硬又大爽黄老大爷视 | 伊人久久大香线蕉午夜 | 无码人妻av免费一区二区三区 | 国产精品丝袜黑色高跟鞋 | 中文字幕 亚洲精品 第1页 | 亚洲精品一区三区三区在线观看 | 亚洲精品综合五月久久小说 | 图片区 小说区 区 亚洲五月 | 鲁一鲁av2019在线 | 毛片内射-百度 | 中文字幕av无码一区二区三区电影 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 老司机亚洲精品影院无码 | 国产精品高潮呻吟av久久4虎 | 国产在线一区二区三区四区五区 | 日本丰满熟妇videos | 国产无套粉嫩白浆在线 | 美女黄网站人色视频免费国产 | 久久无码中文字幕免费影院蜜桃 | 亚洲精品国偷拍自产在线观看蜜桃 | 日韩欧美成人免费观看 | 丝袜足控一区二区三区 | 九九热爱视频精品 | 亚洲综合色区中文字幕 | 99久久久无码国产aaa精品 | 少妇性荡欲午夜性开放视频剧场 | 精品一区二区不卡无码av | 风流少妇按摩来高潮 | 亚洲区小说区激情区图片区 | 国内精品久久久久久中文字幕 | 日韩av无码一区二区三区不卡 | 2019午夜福利不卡片在线 | 伊人久久婷婷五月综合97色 | 亚洲午夜无码久久 | 67194成是人免费无码 | 亚洲成av人在线观看网址 | 成人免费视频在线观看 | 特级做a爰片毛片免费69 | 精品夜夜澡人妻无码av蜜桃 | 全黄性性激高免费视频 | 亚洲精品鲁一鲁一区二区三区 | 欧美丰满熟妇xxxx | 88国产精品欧美一区二区三区 | 牲欲强的熟妇农村老妇女视频 | 国产精品无套呻吟在线 | 在线精品国产一区二区三区 | 无码毛片视频一区二区本码 | 色情久久久av熟女人妻网站 | 一本大道伊人av久久综合 | 人妻与老人中文字幕 | 国产无遮挡吃胸膜奶免费看 | 国产精品久久久久久亚洲影视内衣 | 国产av一区二区精品久久凹凸 | 久久久久久a亚洲欧洲av冫 | 国产三级精品三级男人的天堂 | 亚洲精品综合五月久久小说 | 国产精品亚洲五月天高清 | 77777熟女视频在线观看 а天堂中文在线官网 | 亚洲国产精品无码久久久久高潮 | 欧美 日韩 人妻 高清 中文 | 成年美女黄网站色大免费视频 | 亚洲日本va午夜在线电影 | 男女猛烈xx00免费视频试看 | 午夜精品一区二区三区在线观看 | 麻豆果冻传媒2021精品传媒一区下载 | 大肉大捧一进一出好爽视频 | 亚洲综合无码一区二区三区 | 国产特级毛片aaaaaaa高清 | 久久久久人妻一区精品色欧美 | 国产精品手机免费 | 中文字幕av日韩精品一区二区 | 久久久精品欧美一区二区免费 | 日韩 欧美 动漫 国产 制服 | 欧美日韩一区二区免费视频 | 久久亚洲a片com人成 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 亚洲成熟女人毛毛耸耸多 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 无套内射视频囯产 | 99riav国产精品视频 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 亚洲s码欧洲m码国产av | 国产精品无码mv在线观看 | 欧美人与善在线com | 久久zyz资源站无码中文动漫 | 乱人伦中文视频在线观看 | 一本精品99久久精品77 | 99国产精品白浆在线观看免费 | 极品尤物被啪到呻吟喷水 | 丰满妇女强制高潮18xxxx | 无码午夜成人1000部免费视频 | 中文亚洲成a人片在线观看 | 少妇性荡欲午夜性开放视频剧场 | 亚洲性无码av中文字幕 | 人人澡人人透人人爽 | 女人高潮内射99精品 | 成人欧美一区二区三区黑人 | 黑人巨大精品欧美黑寡妇 | 久久久国产一区二区三区 | 国产精品久久国产精品99 | 国产精品久久久久无码av色戒 | 亚洲日韩精品欧美一区二区 | 国产国语老龄妇女a片 | 欧美成人午夜精品久久久 | 在线看片无码永久免费视频 | 国产精品久久久久久亚洲影视内衣 | 精品少妇爆乳无码av无码专区 | 美女张开腿让人桶 | 丰满妇女强制高潮18xxxx | 亚洲一区二区三区香蕉 | 国产亚洲美女精品久久久2020 | 久久国语露脸国产精品电影 | 国产色视频一区二区三区 | 97资源共享在线视频 | 国产内射爽爽大片视频社区在线 | 网友自拍区视频精品 | 国产艳妇av在线观看果冻传媒 | 欧美午夜特黄aaaaaa片 | 日韩av无码一区二区三区 | 亚洲国产精品一区二区第一页 | 中文字幕无码视频专区 | 红桃av一区二区三区在线无码av | 久久久久av无码免费网 | 在线天堂新版最新版在线8 | 色五月丁香五月综合五月 | 色妞www精品免费视频 | 亚洲国产精品无码一区二区三区 | 国产一区二区三区日韩精品 | 两性色午夜视频免费播放 | 国产激情综合五月久久 | 亚洲熟妇色xxxxx欧美老妇 | 永久免费观看美女裸体的网站 | 捆绑白丝粉色jk震动捧喷白浆 | 四虎国产精品一区二区 | 最近中文2019字幕第二页 | 久久 国产 尿 小便 嘘嘘 | 国产色视频一区二区三区 | 亚洲熟妇自偷自拍另类 | 久久午夜夜伦鲁鲁片无码免费 | 午夜无码区在线观看 | 久久人妻内射无码一区三区 | 97夜夜澡人人双人人人喊 | 精品国产福利一区二区 | 午夜肉伦伦影院 | 日本欧美一区二区三区乱码 | 东京热一精品无码av | 欧美日韩在线亚洲综合国产人 | 亚洲一区二区三区无码久久 | a在线亚洲男人的天堂 | 欧美午夜特黄aaaaaa片 | 国产午夜无码精品免费看 | 小泽玛莉亚一区二区视频在线 | 领导边摸边吃奶边做爽在线观看 | 亚洲中文字幕va福利 | 国产乡下妇女做爰 | 东京热无码av男人的天堂 | 在线a亚洲视频播放在线观看 | aa片在线观看视频在线播放 | 国产精品igao视频网 | 中文字幕+乱码+中文字幕一区 | 狠狠色噜噜狠狠狠狠7777米奇 | 曰本女人与公拘交酡免费视频 | 老司机亚洲精品影院无码 | 精品乱码久久久久久久 | 精品无人国产偷自产在线 | 国产精品亚洲综合色区韩国 | 亚洲精品久久久久中文第一幕 | 亚洲综合在线一区二区三区 | 中文字幕乱妇无码av在线 | 无码精品国产va在线观看dvd | 国产香蕉97碰碰久久人人 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 欧美黑人乱大交 | 色妞www精品免费视频 | 亚洲 a v无 码免 费 成 人 a v | 免费男性肉肉影院 | 亚洲人成网站免费播放 | 国产乱子伦视频在线播放 | 亚洲精品国产a久久久久久 | 国色天香社区在线视频 | 领导边摸边吃奶边做爽在线观看 | 国产xxx69麻豆国语对白 | 亚洲 高清 成人 动漫 | 天下第一社区视频www日本 | 日韩人妻少妇一区二区三区 | 精品国产乱码久久久久乱码 | 2020久久超碰国产精品最新 | 蜜桃臀无码内射一区二区三区 | 中文字幕无线码 | 久久国内精品自在自线 | 国产午夜视频在线观看 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲一区二区三区含羞草 | 欧美日韩精品 | 精品偷自拍另类在线观看 | 国产亲子乱弄免费视频 | аⅴ资源天堂资源库在线 | 亚洲无人区午夜福利码高清完整版 | 丰满人妻精品国产99aⅴ | 国产在热线精品视频 | 国产精品香蕉在线观看 | 亚洲男人av天堂午夜在 | 午夜无码人妻av大片色欲 | 久久99久久99精品中文字幕 | 午夜精品久久久久久久 | 一本大道伊人av久久综合 | 亚洲小说春色综合另类 | 午夜精品久久久久久久久 | 狠狠色丁香久久婷婷综合五月 | 久久99精品国产.久久久久 | 国产精品美女久久久久av爽李琼 | 人妻天天爽夜夜爽一区二区 | 日日干夜夜干 | 亚洲 日韩 欧美 成人 在线观看 | 久久这里只有精品视频9 | 国产亚洲视频中文字幕97精品 | 中文字幕人成乱码熟女app | 国产精品久久福利网站 | 亚洲一区av无码专区在线观看 | 欧美日韩在线亚洲综合国产人 | 日韩在线不卡免费视频一区 | 日日摸天天摸爽爽狠狠97 | 久9re热视频这里只有精品 | 日韩精品久久久肉伦网站 | 狂野欧美性猛xxxx乱大交 | 久久99精品国产麻豆蜜芽 | 亚洲中文字幕久久无码 | 久久精品女人的天堂av | 亚洲人成网站免费播放 | 精品偷拍一区二区三区在线看 | 国产精品二区一区二区aⅴ污介绍 | 亚洲国产精品无码一区二区三区 | 亚洲人成影院在线无码按摩店 | 在线精品亚洲一区二区 | 亚洲日韩av片在线观看 | 天下第一社区视频www日本 | 日韩精品久久久肉伦网站 | 少妇被黑人到高潮喷出白浆 | 国产精品99久久精品爆乳 | 国产亚洲精品久久久闺蜜 | 三上悠亚人妻中文字幕在线 | a在线亚洲男人的天堂 | 88国产精品欧美一区二区三区 | 成人av无码一区二区三区 | 亚洲高清偷拍一区二区三区 | 未满小14洗澡无码视频网站 | 丰满妇女强制高潮18xxxx | 在线观看欧美一区二区三区 | 亚洲国产欧美国产综合一区 | 麻花豆传媒剧国产免费mv在线 | 欧美精品在线观看 | 日本免费一区二区三区最新 | 日本熟妇人妻xxxxx人hd | 丁香啪啪综合成人亚洲 | 特大黑人娇小亚洲女 | 国产综合久久久久鬼色 | 精品国产国产综合精品 | 国产午夜精品一区二区三区嫩草 | 精品国产一区av天美传媒 | 巨爆乳无码视频在线观看 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 欧美丰满熟妇xxxx性ppx人交 | 国产精品国产三级国产专播 | 国产av一区二区三区最新精品 | 久久精品女人的天堂av | 一二三四在线观看免费视频 | 日韩少妇内射免费播放 | 亚洲无人区一区二区三区 | 久久精品国产精品国产精品污 | 国产国产精品人在线视 | 午夜时刻免费入口 | 人妻少妇精品久久 | 亚洲爆乳精品无码一区二区三区 | 在线视频网站www色 | 亚洲欧美日韩国产精品一区二区 | av在线亚洲欧洲日产一区二区 | 成人欧美一区二区三区 | 人人妻人人澡人人爽欧美一区 | 中文字幕无码视频专区 | 亚拍精品一区二区三区探花 | 亚洲精品成人福利网站 | 国产精品免费大片 | 日本饥渴人妻欲求不满 | 欧美xxxx黑人又粗又长 | 青青青手机频在线观看 | 久久精品人妻少妇一区二区三区 | 亚洲精品久久久久久一区二区 | 欧美熟妇另类久久久久久多毛 | 2019午夜福利不卡片在线 | 性色av无码免费一区二区三区 | 久久久久久久久888 | 丰满人妻被黑人猛烈进入 | 少妇邻居内射在线 | 十八禁视频网站在线观看 | а天堂中文在线官网 | 精品国产av色一区二区深夜久久 | 亚洲人成网站免费播放 | 特大黑人娇小亚洲女 | 麻豆国产丝袜白领秘书在线观看 | аⅴ资源天堂资源库在线 | 日韩欧美中文字幕在线三区 | 亚洲一区av无码专区在线观看 | 国产无av码在线观看 | 午夜熟女插插xx免费视频 | 久久久国产一区二区三区 | 国产午夜福利100集发布 | 67194成是人免费无码 | 久久久久久亚洲精品a片成人 | 色综合久久中文娱乐网 | 国产精品-区区久久久狼 | 亚洲日韩av一区二区三区四区 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 思思久久99热只有频精品66 | 国产热a欧美热a在线视频 | 亚洲 激情 小说 另类 欧美 | 国产明星裸体无码xxxx视频 | 欧美日韩综合一区二区三区 | 国精品人妻无码一区二区三区蜜柚 | 亚洲一区av无码专区在线观看 | 99久久亚洲精品无码毛片 | 精品一区二区三区波多野结衣 | 永久免费精品精品永久-夜色 | 亚洲国产欧美国产综合一区 | 国产99久久精品一区二区 | 好爽又高潮了毛片免费下载 | 免费国产黄网站在线观看 | 老熟妇仑乱视频一区二区 | 精品国产一区二区三区四区在线看 | 亚洲精品久久久久久一区二区 | 日韩av激情在线观看 | 日本大乳高潮视频在线观看 | 亚洲国产成人a精品不卡在线 | 中文字幕 人妻熟女 | 成人无码视频在线观看网站 | 国产香蕉尹人视频在线 | www国产亚洲精品久久网站 | 国产乱人伦偷精品视频 | 无码人妻丰满熟妇区毛片18 | 精品日本一区二区三区在线观看 | 久久人人爽人人爽人人片ⅴ | 高清国产亚洲精品自在久久 | 老司机亚洲精品影院无码 | 中文精品无码中文字幕无码专区 | 天堂一区人妻无码 | 久久国产精品_国产精品 | 久久久精品成人免费观看 | 无码国产激情在线观看 | 国产97人人超碰caoprom | 国产人妻人伦精品1国产丝袜 | 嫩b人妻精品一区二区三区 | 日本在线高清不卡免费播放 | 国产香蕉97碰碰久久人人 | 蜜臀aⅴ国产精品久久久国产老师 | 日本xxxx色视频在线观看免费 | 国产午夜无码视频在线观看 | 青青久在线视频免费观看 | 免费乱码人妻系列无码专区 | 丰满诱人的人妻3 | 中文无码精品a∨在线观看不卡 | 欧美成人免费全部网站 | 狠狠色欧美亚洲狠狠色www | 免费网站看v片在线18禁无码 | 无码毛片视频一区二区本码 | 国产精品欧美成人 | 麻豆国产97在线 | 欧洲 | 岛国片人妻三上悠亚 | 国产明星裸体无码xxxx视频 | 亚洲精品午夜国产va久久成人 | 亚洲va中文字幕无码久久不卡 | 55夜色66夜色国产精品视频 | 午夜理论片yy44880影院 | 日本在线高清不卡免费播放 | 国产乱人伦偷精品视频 | 亚洲精品国产品国语在线观看 | 香蕉久久久久久av成人 | 中国大陆精品视频xxxx | 宝宝好涨水快流出来免费视频 | 成人性做爰aaa片免费看不忠 | 美女黄网站人色视频免费国产 | 色婷婷久久一区二区三区麻豆 | 色五月五月丁香亚洲综合网 | 久久久精品456亚洲影院 | 亚洲码国产精品高潮在线 | 亚洲精品一区二区三区婷婷月 | 国产97色在线 | 免 | 麻豆精品国产精华精华液好用吗 | 欧洲精品码一区二区三区免费看 | 国产区女主播在线观看 | 2019午夜福利不卡片在线 | 国产绳艺sm调教室论坛 | 男人和女人高潮免费网站 | 亚洲无人区午夜福利码高清完整版 | 精品人妻人人做人人爽夜夜爽 | 亚洲色大成网站www国产 | 日本肉体xxxx裸交 | 久久久中文久久久无码 | v一区无码内射国产 | 国产电影无码午夜在线播放 | 亚洲人成人无码网www国产 | 国产av人人夜夜澡人人爽麻豆 | 久久久久免费精品国产 | 色婷婷综合中文久久一本 | 精品国产一区二区三区四区 | 欧美日本日韩 | 亚洲精品国产精品乱码视色 | 无遮无挡爽爽免费视频 | 国产亚洲精品久久久久久久久动漫 | a在线观看免费网站大全 | 欧美日韩色另类综合 | 国产精品无码mv在线观看 | 国产亚av手机在线观看 | 国产亚洲视频中文字幕97精品 | 任你躁在线精品免费 | 人人爽人人澡人人高潮 | 国产精品无码成人午夜电影 | 久久精品无码一区二区三区 | а天堂中文在线官网 | 久久国产精品_国产精品 | 人妻互换免费中文字幕 | 激情五月综合色婷婷一区二区 | 色婷婷av一区二区三区之红樱桃 | 日本成熟视频免费视频 | 日韩欧美中文字幕公布 | 国产精品国产三级国产专播 | 免费无码av一区二区 | 亚洲国产精品久久久天堂 | 午夜无码区在线观看 | 一个人免费观看的www视频 | 少妇无码av无码专区在线观看 | 婷婷五月综合缴情在线视频 | 久久国产精品精品国产色婷婷 | 人妻无码久久精品人妻 | 亚洲va中文字幕无码久久不卡 | 国产av剧情md精品麻豆 | 性欧美videos高清精品 | 少妇人妻大乳在线视频 | 无码人妻精品一区二区三区下载 | 国产成人精品久久亚洲高清不卡 | 国产色xx群视频射精 | 欧美熟妇另类久久久久久多毛 | 国产精品国产自线拍免费软件 | 精品无码国产自产拍在线观看蜜 | 亚洲精品国产精品乱码不卡 | 国产午夜福利亚洲第一 | 内射欧美老妇wbb | 全球成人中文在线 | 亚洲成a人片在线观看无码 | 亚洲一区二区三区含羞草 | 久久精品国产99久久6动漫 | 无码国内精品人妻少妇 | 鲁大师影院在线观看 | 动漫av一区二区在线观看 | 欧美兽交xxxx×视频 | 在线播放亚洲第一字幕 | 亚洲欧美精品伊人久久 | 窝窝午夜理论片影院 | 奇米影视7777久久精品 | ass日本丰满熟妇pics | 麻豆蜜桃av蜜臀av色欲av | 性欧美牲交xxxxx视频 | 人人妻在人人 | 亚洲国产精品成人久久蜜臀 | 成人免费视频在线观看 | 久久亚洲a片com人成 | 东京热男人av天堂 | 亚洲呦女专区 | 欧美精品免费观看二区 | 国产精品久久久久久亚洲毛片 | 无码人中文字幕 | 日本一区二区三区免费高清 | 免费国产成人高清在线观看网站 | 西西人体www44rt大胆高清 | 久久国产36精品色熟妇 | 大胆欧美熟妇xx | 亚洲最大成人网站 | а√资源新版在线天堂 | 久久久久99精品成人片 | 亚洲天堂2017无码中文 | 亚洲欧美综合区丁香五月小说 | 一本色道久久综合亚洲精品不卡 | 色欲av亚洲一区无码少妇 | 老司机亚洲精品影院 | 国产精品18久久久久久麻辣 | 中文字幕无码热在线视频 | 人人爽人人澡人人高潮 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 午夜精品久久久内射近拍高清 | 丝袜 中出 制服 人妻 美腿 | 台湾无码一区二区 | 麻豆人妻少妇精品无码专区 | 免费播放一区二区三区 | 国产精品怡红院永久免费 | 国产肉丝袜在线观看 | 久久久久久亚洲精品a片成人 | 亚洲精品久久久久avwww潮水 | 男女下面进入的视频免费午夜 | 久久国产精品二国产精品 | 欧美日韩一区二区三区自拍 | 蜜臀aⅴ国产精品久久久国产老师 | 伊在人天堂亚洲香蕉精品区 | 99久久精品午夜一区二区 | 亚洲国产欧美国产综合一区 | 亚洲精品成a人在线观看 | 中国女人内谢69xxxx | 久久久久久久久888 | 亚洲精品一区二区三区四区五区 | 国产精品第一区揄拍无码 | 国产午夜福利100集发布 | 欧美丰满熟妇xxxx | 欧美freesex黑人又粗又大 | 人人妻人人澡人人爽人人精品浪潮 | 亚洲第一无码av无码专区 | 免费视频欧美无人区码 | 强伦人妻一区二区三区视频18 | 欧美性生交活xxxxxdddd | 亚洲爆乳精品无码一区二区三区 | 人人澡人人透人人爽 | 熟女少妇在线视频播放 | 久久人人爽人人人人片 | 中文毛片无遮挡高清免费 | 动漫av网站免费观看 | 久久综合香蕉国产蜜臀av | 国产两女互慰高潮视频在线观看 | 国产性生交xxxxx无码 | 久久aⅴ免费观看 | 久久亚洲精品中文字幕无男同 | 久久zyz资源站无码中文动漫 | 国产精品a成v人在线播放 | 一个人看的视频www在线 | 又粗又大又硬毛片免费看 | 久久久久久国产精品无码下载 | 欧美人与动性行为视频 | 亚洲成a人一区二区三区 | 亚洲精品www久久久 | 国产农村妇女高潮大叫 | 色情久久久av熟女人妻网站 | 精品人妻中文字幕有码在线 | 久在线观看福利视频 | 大地资源网第二页免费观看 | 久久 国产 尿 小便 嘘嘘 | 少妇人妻偷人精品无码视频 | 精品无码国产一区二区三区av | 奇米影视7777久久精品 | 3d动漫精品啪啪一区二区中 | 高中生自慰www网站 | 东京热一精品无码av | 色综合久久久无码网中文 | 丰满少妇弄高潮了www | 日本一本二本三区免费 | 玩弄人妻少妇500系列视频 | 中文字幕av日韩精品一区二区 | 亚洲色欲色欲天天天www | 国产片av国语在线观看 | 99久久精品日本一区二区免费 | 福利一区二区三区视频在线观看 | 国内老熟妇对白xxxxhd | 女人被男人爽到呻吟的视频 | 国产午夜亚洲精品不卡 | 久久精品人人做人人综合试看 | 中文久久乱码一区二区 | 成人精品一区二区三区中文字幕 | 欧洲vodafone精品性 | 久久精品中文字幕一区 | 黑森林福利视频导航 | 精品成人av一区二区三区 | 国内精品久久久久久中文字幕 | 最近免费中文字幕中文高清百度 | 日日天干夜夜狠狠爱 | 欧美亚洲国产一区二区三区 | 亚洲国产午夜精品理论片 | 久久99久久99精品中文字幕 | 扒开双腿疯狂进出爽爽爽视频 | 久久精品视频在线看15 | 4hu四虎永久在线观看 | 夜精品a片一区二区三区无码白浆 | 色综合久久久无码中文字幕 | 思思久久99热只有频精品66 | 在线观看国产一区二区三区 | 国产免费观看黄av片 | 少妇被黑人到高潮喷出白浆 | 精品无码国产自产拍在线观看蜜 | 人人妻人人藻人人爽欧美一区 | 日本又色又爽又黄的a片18禁 | 大肉大捧一进一出视频出来呀 | 呦交小u女精品视频 | 理论片87福利理论电影 | 亚洲精品无码国产 | 人妻夜夜爽天天爽三区 | 欧洲熟妇精品视频 | 亚洲中文字幕无码中文字在线 | 欧美喷潮久久久xxxxx | 国产乡下妇女做爰 | 国产无遮挡吃胸膜奶免费看 | 鲁鲁鲁爽爽爽在线视频观看 | 国内老熟妇对白xxxxhd | 日日鲁鲁鲁夜夜爽爽狠狠 | 人人妻人人澡人人爽欧美一区 | 欧美老妇交乱视频在线观看 | 亚洲日本va中文字幕 | 性做久久久久久久免费看 | 国产麻豆精品精东影业av网站 | 无码人中文字幕 | 精品国产国产综合精品 | 亚洲人成无码网www | a在线亚洲男人的天堂 | 亚洲熟妇色xxxxx欧美老妇y | 成人无码精品1区2区3区免费看 | 丰满妇女强制高潮18xxxx | 熟女俱乐部五十路六十路av | 一本久久a久久精品vr综合 | 熟女俱乐部五十路六十路av | 97久久精品无码一区二区 | 日本肉体xxxx裸交 | 国产成人精品视频ⅴa片软件竹菊 | 人人爽人人澡人人人妻 | 成在人线av无码免观看麻豆 | 中文无码伦av中文字幕 | 亚洲成a人片在线观看无码 | 成人女人看片免费视频放人 | 亚洲精品国偷拍自产在线麻豆 | 一个人看的视频www在线 | 无码吃奶揉捏奶头高潮视频 | 乌克兰少妇性做爰 | 亚洲一区av无码专区在线观看 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 天天做天天爱天天爽综合网 | 亚洲成a人片在线观看无码3d | 性啪啪chinese东北女人 | 中文字幕人成乱码熟女app | 亚洲国产精品毛片av不卡在线 | 人妻天天爽夜夜爽一区二区 | 欧美黑人性暴力猛交喷水 | 亚洲日本va午夜在线电影 | 国产极品美女高潮无套在线观看 | 国产av一区二区三区最新精品 | 国产福利视频一区二区 | 亚洲精品无码人妻无码 | 伊人久久大香线蕉午夜 | 久久亚洲日韩精品一区二区三区 | 国产精品资源一区二区 | 东北女人啪啪对白 | 亚洲欧美精品aaaaaa片 | 无码国产色欲xxxxx视频 | 精品少妇爆乳无码av无码专区 | 少妇无码一区二区二三区 | 狠狠综合久久久久综合网 | 日韩少妇白浆无码系列 | 在线视频网站www色 | 欧美人与动性行为视频 | 亚洲国产精品一区二区美利坚 | 久久久久成人片免费观看蜜芽 | 久久精品一区二区三区四区 | 亚洲综合无码一区二区三区 | 欧美阿v高清资源不卡在线播放 | 中文字幕乱妇无码av在线 | 中文字幕日韩精品一区二区三区 | 日日麻批免费40分钟无码 | 国产精品手机免费 | 日本精品久久久久中文字幕 | 亚洲精品中文字幕乱码 | а天堂中文在线官网 | 成 人 免费观看网站 | 两性色午夜视频免费播放 | 亚洲最大成人网站 | 国产乡下妇女做爰 | 精品国产福利一区二区 | 色一情一乱一伦一视频免费看 | 人妻夜夜爽天天爽三区 | 一二三四社区在线中文视频 | 丁香啪啪综合成人亚洲 | 青青青手机频在线观看 | 国产成人无码av一区二区 | 久久综合香蕉国产蜜臀av | 综合人妻久久一区二区精品 | 女人被男人爽到呻吟的视频 | 天天综合网天天综合色 | 久久久国产一区二区三区 | 国产av一区二区精品久久凹凸 | 乌克兰少妇xxxx做受 | 4hu四虎永久在线观看 | 精品久久久久香蕉网 | 国产精品-区区久久久狼 | 亚洲国产精品无码一区二区三区 | 国产精华av午夜在线观看 | 国产av剧情md精品麻豆 | 狠狠噜狠狠狠狠丁香五月 | 无码纯肉视频在线观看 | 99久久精品日本一区二区免费 | 欧美放荡的少妇 | 久久www免费人成人片 | 国产精品国产三级国产专播 | 任你躁国产自任一区二区三区 | 国产精华av午夜在线观看 | 青草青草久热国产精品 | 日本一卡二卡不卡视频查询 | 精品国产一区二区三区四区在线看 | 国产成人无码av在线影院 | 国产明星裸体无码xxxx视频 | 国产麻豆精品一区二区三区v视界 | 欧美喷潮久久久xxxxx | 国产午夜福利亚洲第一 | 女人和拘做爰正片视频 | 少妇被粗大的猛进出69影院 | 亚洲日韩乱码中文无码蜜桃臀网站 | 成熟妇人a片免费看网站 | 久久精品国产一区二区三区 | 国产乱人伦av在线无码 | 国产亚洲精品久久久久久 | 久久久精品人妻久久影视 | 最新国产麻豆aⅴ精品无码 | 日本在线高清不卡免费播放 | 国产成人无码午夜视频在线观看 | 亚洲精品国偷拍自产在线麻豆 | 国产va免费精品观看 | 中文字幕无码视频专区 | 国产午夜视频在线观看 | 无码人妻丰满熟妇区五十路百度 | 精品少妇爆乳无码av无码专区 | 久久精品成人欧美大片 | 亚洲精品久久久久久久久久久 | 色一情一乱一伦一视频免费看 | 在教室伦流澡到高潮hnp视频 | 自拍偷自拍亚洲精品10p | 国产免费观看黄av片 | 青青青爽视频在线观看 | 亚洲国产精品一区二区美利坚 | 久久久久成人片免费观看蜜芽 | 久久久久se色偷偷亚洲精品av | 装睡被陌生人摸出水好爽 | 无码人妻精品一区二区三区不卡 | 97夜夜澡人人双人人人喊 | 国产精品无码成人午夜电影 | 一本大道久久东京热无码av | 亚洲精品一区二区三区在线观看 | 无码一区二区三区在线观看 | 国产精品怡红院永久免费 | 久久精品人人做人人综合 | 国产色精品久久人妻 | yw尤物av无码国产在线观看 | 亚洲精品综合一区二区三区在线 | 99久久亚洲精品无码毛片 | 中文字幕无码免费久久9一区9 | 欧美日韩人成综合在线播放 | 日韩av无码中文无码电影 | 无码一区二区三区在线 | 老子影院午夜精品无码 | 亚洲欧美国产精品专区久久 | 狠狠综合久久久久综合网 | 成人毛片一区二区 | 精品亚洲成av人在线观看 | 高清不卡一区二区三区 | 中文字幕乱码亚洲无线三区 | 最近中文2019字幕第二页 | 久久国产精品_国产精品 | 精品无码成人片一区二区98 | 日本丰满护士爆乳xxxx | 青青青爽视频在线观看 | 婷婷五月综合激情中文字幕 | 亚洲中文字幕在线观看 | 亚洲午夜无码久久 | 欧美人与牲动交xxxx | 国产精品美女久久久久av爽李琼 | 亚洲中文字幕av在天堂 | 亚洲中文字幕成人无码 | 国产精品久久久久久久9999 | 日日夜夜撸啊撸 | 日产精品高潮呻吟av久久 | 波多野结衣高清一区二区三区 | 亚洲欧洲日本综合aⅴ在线 | 日本乱人伦片中文三区 | 欧美日本免费一区二区三区 | 无码帝国www无码专区色综合 | 亚洲中文字幕成人无码 | 精品无人区无码乱码毛片国产 | 国产极品美女高潮无套在线观看 | 成人性做爰aaa片免费看 | 国产超碰人人爽人人做人人添 | 国产精品无码一区二区桃花视频 | 成人性做爰aaa片免费看不忠 | 免费看男女做好爽好硬视频 | 免费国产成人高清在线观看网站 | 天天av天天av天天透 | 午夜精品久久久久久久 | 成人片黄网站色大片免费观看 | 无遮无挡爽爽免费视频 | 东京热无码av男人的天堂 | 无码毛片视频一区二区本码 | 亚洲综合久久一区二区 | 中文字幕人妻无码一区二区三区 | 亚洲高清偷拍一区二区三区 | 欧美刺激性大交 | 欧美日韩视频无码一区二区三 | 精品一区二区三区无码免费视频 | 国产精品亚洲lv粉色 | 一本大道伊人av久久综合 | 无码乱肉视频免费大全合集 | 十八禁真人啪啪免费网站 | 精品国产麻豆免费人成网站 | 国产又粗又硬又大爽黄老大爷视 | 久久国产精品二国产精品 | 欧美人与动性行为视频 | 日本xxxx色视频在线观看免费 | 久久久av男人的天堂 | 中文无码精品a∨在线观看不卡 | 久久zyz资源站无码中文动漫 | 亚洲最大成人网站 | 丰满少妇高潮惨叫视频 | 亚洲色欲色欲欲www在线 | 学生妹亚洲一区二区 | 亚洲日韩乱码中文无码蜜桃臀网站 | а天堂中文在线官网 | 永久免费观看国产裸体美女 | 欧美国产日产一区二区 | 中文亚洲成a人片在线观看 | 欧美精品无码一区二区三区 | 一区二区三区乱码在线 | 欧洲 | 97久久国产亚洲精品超碰热 | 成 人影片 免费观看 | 久久久无码中文字幕久... | 狠狠色色综合网站 | 久久久久国色av免费观看性色 | 99久久精品无码一区二区毛片 | 亚洲国产精品美女久久久久 | 亚洲色在线无码国产精品不卡 | 好屌草这里只有精品 | 日日鲁鲁鲁夜夜爽爽狠狠 | 无遮挡啪啪摇乳动态图 | 超碰97人人射妻 | 国产av人人夜夜澡人人爽麻豆 | 初尝人妻少妇中文字幕 | 欧美大屁股xxxxhd黑色 | 性色欲情网站iwww九文堂 | 久久精品国产大片免费观看 | 久久精品国产99精品亚洲 | 国产亲子乱弄免费视频 | a在线亚洲男人的天堂 | 国产黑色丝袜在线播放 | 桃花色综合影院 | 久久国产精品二国产精品 | 无码成人精品区在线观看 | 激情人妻另类人妻伦 | 亚洲乱码国产乱码精品精 | 乱人伦人妻中文字幕无码久久网 | 领导边摸边吃奶边做爽在线观看 | 男女爱爱好爽视频免费看 | 大色综合色综合网站 | 久久zyz资源站无码中文动漫 | 婷婷五月综合激情中文字幕 | 国产三级精品三级男人的天堂 | 亚洲人成网站免费播放 | 国产性生大片免费观看性 | 国内揄拍国内精品人妻 | 激情内射亚州一区二区三区爱妻 | 亚洲成a人片在线观看无码3d | 欧美兽交xxxx×视频 | 中文字幕乱码人妻二区三区 | 国内丰满熟女出轨videos | 国产精品自产拍在线观看 | 国产女主播喷水视频在线观看 | 久久精品无码一区二区三区 | 网友自拍区视频精品 | 中文字幕+乱码+中文字幕一区 | 欧美成人免费全部网站 | 国产av一区二区三区最新精品 | 国产精品久久国产三级国 | 欧美人与禽猛交狂配 | 国产日产欧产精品精品app | 日韩av无码一区二区三区 | 国产精品久久久一区二区三区 | 无码人妻久久一区二区三区不卡 | 丰满少妇熟乱xxxxx视频 | 5858s亚洲色大成网站www | 97夜夜澡人人双人人人喊 | 人妻少妇精品久久 | 一本久久伊人热热精品中文字幕 | 一个人看的www免费视频在线观看 | 强开小婷嫩苞又嫩又紧视频 | 欧美日本日韩 | 99久久亚洲精品无码毛片 | 亚洲国产av美女网站 | 精品偷拍一区二区三区在线看 | 一本无码人妻在中文字幕免费 | 国内精品九九久久久精品 | 乱人伦人妻中文字幕无码久久网 | 最新国产乱人伦偷精品免费网站 | 夫妻免费无码v看片 | 动漫av一区二区在线观看 | 性色欲情网站iwww九文堂 | 亚洲日韩一区二区三区 | 高潮毛片无遮挡高清免费视频 | 国产精品久久久av久久久 | 极品尤物被啪到呻吟喷水 | 秋霞成人午夜鲁丝一区二区三区 | 日本熟妇乱子伦xxxx | 国产亚洲精品久久久久久久 | 18黄暴禁片在线观看 | 无码av岛国片在线播放 | 日本一区二区三区免费高清 | 强开小婷嫩苞又嫩又紧视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产无遮挡又黄又爽免费视频 | 九九久久精品国产免费看小说 | 日本大乳高潮视频在线观看 | 天天摸天天碰天天添 | 国产精品香蕉在线观看 | 亚洲精品午夜国产va久久成人 | 曰本女人与公拘交酡免费视频 | 国产办公室秘书无码精品99 | 亚洲 a v无 码免 费 成 人 a v | 99在线 | 亚洲 | 亚洲 激情 小说 另类 欧美 | 亚洲综合另类小说色区 | 99久久精品午夜一区二区 | 国产精品久久久久久久9999 | 老熟女重囗味hdxx69 | 性生交片免费无码看人 | 野狼第一精品社区 | 国产精品99爱免费视频 | 精品日本一区二区三区在线观看 | 久久久久久久久蜜桃 | 国产九九九九九九九a片 | 人妻少妇精品视频专区 | 亚洲色欲色欲天天天www | 成人亚洲精品久久久久 | 国产欧美亚洲精品a | aⅴ亚洲 日韩 色 图网站 播放 | 狂野欧美激情性xxxx | 成 人 免费观看网站 | 日本肉体xxxx裸交 | 性色欲情网站iwww九文堂 | 国产真实夫妇视频 | 天堂一区人妻无码 | 成人免费视频视频在线观看 免费 | 亚洲日本在线电影 | 国产成人一区二区三区在线观看 | 伊在人天堂亚洲香蕉精品区 | 夜夜躁日日躁狠狠久久av | 欧美日韩一区二区三区自拍 | 女人色极品影院 | 丁香花在线影院观看在线播放 | 亚洲一区二区三区在线观看网站 | 好男人www社区 | 日日噜噜噜噜夜夜爽亚洲精品 | 精品成在人线av无码免费看 | 久久久精品欧美一区二区免费 | 午夜精品一区二区三区在线观看 | 精品无码成人片一区二区98 | 欧洲精品码一区二区三区免费看 | 东京一本一道一二三区 | 乱人伦人妻中文字幕无码久久网 | 狠狠躁日日躁夜夜躁2020 | 成人欧美一区二区三区黑人 | 亚洲成av人片在线观看无码不卡 | 女人被爽到呻吟gif动态图视看 | 久久99精品国产.久久久久 | 国产黑色丝袜在线播放 | 国产乱子伦视频在线播放 | 男人扒开女人内裤强吻桶进去 | 巨爆乳无码视频在线观看 | 国产特级毛片aaaaaa高潮流水 | 午夜丰满少妇性开放视频 | 亚洲日本va中文字幕 | 欧美阿v高清资源不卡在线播放 | 小泽玛莉亚一区二区视频在线 | 大胆欧美熟妇xx | 88国产精品欧美一区二区三区 | 国产精品美女久久久 | 国产熟女一区二区三区四区五区 | 欧洲熟妇色 欧美 | 国产成人无码一二三区视频 | 亚洲国产成人a精品不卡在线 | 欧美日本精品一区二区三区 | 亚洲精品鲁一鲁一区二区三区 | 黑人巨大精品欧美一区二区 | 亚洲熟妇色xxxxx欧美老妇 | 婷婷六月久久综合丁香 | 中文字幕 亚洲精品 第1页 | 国产精品美女久久久网av | 国产国产精品人在线视 | 国产精品久久国产三级国 | 精品欧洲av无码一区二区三区 | 国产精品亚洲专区无码不卡 | 欧美日韩在线亚洲综合国产人 | 一本色道婷婷久久欧美 | 97精品国产97久久久久久免费 | 亚洲精品国偷拍自产在线观看蜜桃 | 亚洲精品一区二区三区四区五区 | 亚洲精品国产a久久久久久 | 日日摸日日碰夜夜爽av | 久久精品国产大片免费观看 | 无码人妻精品一区二区三区下载 | 1000部夫妻午夜免费 | 免费乱码人妻系列无码专区 | 久久国产36精品色熟妇 | 在线精品国产一区二区三区 | 国产人妻精品一区二区三区 | 精品成在人线av无码免费看 | 亚洲人交乣女bbw | 亚洲gv猛男gv无码男同 | 性生交片免费无码看人 | 国产va免费精品观看 | 亚洲精品综合一区二区三区在线 | 午夜精品久久久内射近拍高清 | 成人性做爰aaa片免费看不忠 | 亚洲 日韩 欧美 成人 在线观看 | 99精品久久毛片a片 | 国内精品一区二区三区不卡 | аⅴ资源天堂资源库在线 | 成人女人看片免费视频放人 | 国产熟女一区二区三区四区五区 | 中文字幕无码日韩欧毛 | 亚洲精品一区二区三区大桥未久 | 国产精品第一区揄拍无码 | 成人欧美一区二区三区 | 麻豆果冻传媒2021精品传媒一区下载 | 午夜熟女插插xx免费视频 | 色诱久久久久综合网ywww | 欧美国产日韩久久mv | 大地资源网第二页免费观看 | 精品成人av一区二区三区 | 男女作爱免费网站 | 国产成人无码区免费内射一片色欲 | 久久亚洲国产成人精品性色 | 亚洲中文字幕无码一久久区 | 日韩人妻少妇一区二区三区 | 欧美人与牲动交xxxx | 国内精品人妻无码久久久影院蜜桃 | 国产一区二区三区影院 | 任你躁国产自任一区二区三区 | 国产激情无码一区二区app | 精品亚洲韩国一区二区三区 | 四虎永久在线精品免费网址 | 国产情侣作爱视频免费观看 | 一个人看的www免费视频在线观看 | 欧美黑人巨大xxxxx | 亚洲最大成人网站 | 久久亚洲日韩精品一区二区三区 | 欧美国产日产一区二区 | 中文字幕久久久久人妻 | 草草网站影院白丝内射 | 西西人体www44rt大胆高清 | 国产两女互慰高潮视频在线观看 | 国产办公室秘书无码精品99 | 麻豆果冻传媒2021精品传媒一区下载 | 国产综合在线观看 | 国产一精品一av一免费 | 国产成人一区二区三区别 | 国产无遮挡吃胸膜奶免费看 | 妺妺窝人体色www婷婷 | 国产情侣作爱视频免费观看 | 亚洲精品成人av在线 | 人人澡人人透人人爽 | 日日橹狠狠爱欧美视频 | 中文字幕久久久久人妻 | 中文字幕人成乱码熟女app | 日本xxxx色视频在线观看免费 | a片在线免费观看 | 国产午夜精品一区二区三区嫩草 | 国产午夜亚洲精品不卡下载 | 午夜丰满少妇性开放视频 | 亚洲日韩av一区二区三区中文 | 国产精品亚洲五月天高清 | 色欲人妻aaaaaaa无码 | 久久精品国产一区二区三区肥胖 | 亚洲七七久久桃花影院 | 久久久久久av无码免费看大片 | 无码国产色欲xxxxx视频 | 国产精品久久福利网站 | 国产成人精品久久亚洲高清不卡 | 精品夜夜澡人妻无码av蜜桃 | 午夜福利试看120秒体验区 | 麻豆人妻少妇精品无码专区 | 玩弄中年熟妇正在播放 | 久久国产精品偷任你爽任你 | 国产 浪潮av性色四虎 | 久久国产精品偷任你爽任你 | 久久综合九色综合97网 | 亚洲精品成a人在线观看 | 超碰97人人做人人爱少妇 | 丰满少妇女裸体bbw | 欧美猛少妇色xxxxx | 国产色xx群视频射精 | 精品国偷自产在线 | 偷窥村妇洗澡毛毛多 | 乱人伦人妻中文字幕无码 | 欧美人与牲动交xxxx | 初尝人妻少妇中文字幕 | 欧洲美熟女乱又伦 | 我要看www免费看插插视频 | 精品国产一区二区三区四区在线看 | 在线欧美精品一区二区三区 | 无码人妻丰满熟妇区毛片18 | 97夜夜澡人人爽人人喊中国片 | 久久亚洲国产成人精品性色 | 亚洲熟妇色xxxxx欧美老妇y | 国产香蕉97碰碰久久人人 | 欧美日韩一区二区免费视频 | 久久伊人色av天堂九九小黄鸭 | 亚洲成a人一区二区三区 | 亚洲色www成人永久网址 | 欧美一区二区三区 | 国产又爽又黄又刺激的视频 | 久久久久久av无码免费看大片 | 装睡被陌生人摸出水好爽 | 色偷偷人人澡人人爽人人模 | 熟女少妇在线视频播放 | 色情久久久av熟女人妻网站 | 欧美精品在线观看 | 大地资源网第二页免费观看 | 熟妇人妻无乱码中文字幕 | 伊人色综合久久天天小片 | 免费网站看v片在线18禁无码 | 亚洲男人av天堂午夜在 | 久久无码中文字幕免费影院蜜桃 | 无码午夜成人1000部免费视频 | 国内精品一区二区三区不卡 | 狠狠噜狠狠狠狠丁香五月 | 亚洲精品一区二区三区在线 | 丝袜美腿亚洲一区二区 | 成年美女黄网站色大免费全看 | 无码人妻精品一区二区三区下载 | 六十路熟妇乱子伦 | 国产精品.xx视频.xxtv | 色窝窝无码一区二区三区色欲 | 亚洲欧洲日本综合aⅴ在线 | 亚洲乱码国产乱码精品精 | 亚洲国产午夜精品理论片 | 国产在线aaa片一区二区99 | 99久久精品日本一区二区免费 | 亚洲精品国产精品乱码不卡 | 乱码av麻豆丝袜熟女系列 | 鲁鲁鲁爽爽爽在线视频观看 | 两性色午夜免费视频 | 精品成人av一区二区三区 | 思思久久99热只有频精品66 | 国产午夜无码精品免费看 | 久久国产精品偷任你爽任你 | 图片区 小说区 区 亚洲五月 | 欧美日韩一区二区三区自拍 | 日本欧美一区二区三区乱码 | 亚洲国产精品一区二区美利坚 | 久久人人爽人人爽人人片ⅴ | 日韩av无码中文无码电影 | 国产成人精品一区二区在线小狼 | 亚洲一区二区三区香蕉 | 亚洲中文字幕在线无码一区二区 | 亚洲中文字幕va福利 | 正在播放东北夫妻内射 | 四十如虎的丰满熟妇啪啪 | 久久久精品456亚洲影院 | 亚洲国精产品一二二线 | 亚洲爆乳大丰满无码专区 | 日韩在线不卡免费视频一区 | 欧美 亚洲 国产 另类 | 久久久婷婷五月亚洲97号色 | 领导边摸边吃奶边做爽在线观看 | 亚洲国产成人av在线观看 | 对白脏话肉麻粗话av | 欧美日韩一区二区综合 | 中文字幕乱码人妻二区三区 | 精品一区二区三区波多野结衣 | 国产精品对白交换视频 | 欧美日韩视频无码一区二区三 | 精品国产福利一区二区 | 黑人玩弄人妻中文在线 | 成年女人永久免费看片 | 狠狠cao日日穞夜夜穞av | 国产激情一区二区三区 | 少妇人妻偷人精品无码视频 | 爆乳一区二区三区无码 | 婷婷综合久久中文字幕蜜桃三电影 | 久久熟妇人妻午夜寂寞影院 | 男女性色大片免费网站 | 久久久国产一区二区三区 | 中文字幕无码人妻少妇免费 | 亚洲综合精品香蕉久久网 | 国产午夜无码视频在线观看 | 久热国产vs视频在线观看 | 亚洲男人av天堂午夜在 | 婷婷丁香六月激情综合啪 | 亚洲日韩一区二区 | 无码人妻黑人中文字幕 | 日韩亚洲欧美中文高清在线 | 无码精品国产va在线观看dvd | 日本护士毛茸茸高潮 | 对白脏话肉麻粗话av | 亚洲小说春色综合另类 | 97色伦图片97综合影院 | 无码任你躁久久久久久久 | 婷婷综合久久中文字幕蜜桃三电影 | 国产舌乚八伦偷品w中 | 无码成人精品区在线观看 | 青春草在线视频免费观看 | 国产情侣作爱视频免费观看 | 综合人妻久久一区二区精品 | 国产成人一区二区三区在线观看 | 中文字幕无码日韩欧毛 | 精品无码一区二区三区的天堂 | 国产欧美亚洲精品a | a片免费视频在线观看 | 成在人线av无码免观看麻豆 | 亚洲欧美精品aaaaaa片 | 性欧美大战久久久久久久 | 国产综合在线观看 | 一本久道高清无码视频 | 亚洲精品久久久久中文第一幕 | 亚洲色在线无码国产精品不卡 | 国产手机在线αⅴ片无码观看 | 亚洲另类伦春色综合小说 | 欧美一区二区三区 | 1000部啪啪未满十八勿入下载 | 欧美丰满老熟妇xxxxx性 | 丝袜足控一区二区三区 | 欧美精品国产综合久久 | 无码午夜成人1000部免费视频 | 宝宝好涨水快流出来免费视频 | 中文字幕无码乱人伦 | 精品无码成人片一区二区98 | 伊人久久大香线蕉av一区二区 | 国产av一区二区精品久久凹凸 | 日本大乳高潮视频在线观看 | 一本久道久久综合狠狠爱 | 精品aⅴ一区二区三区 | 日本乱偷人妻中文字幕 | 国产精品毛多多水多 |