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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

使用Datastax Java驱动程序与Cassandra进行交互

發布時間:2023/12/3 java 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Datastax Java驱动程序与Cassandra进行交互 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天,我這次返回了更多的Cassandra和Java集成,重點是使用Datastax Java驅動程序,而不是我已經寫了很多文章的Spring Data Cassandra。 Spring Data實際上使用了Datastax驅動程序來與Cassandra進行交互,但是在其之上還附帶了一些額外的功能。 但是我們今天不想要任何這些! 我們將直接使用Datastax驅動程序,并且在帖子結尾處,一旦我們看到了如何使用它,便將其與Spring Data進行比較。

這篇文章假設您已經熟悉Cassandra,甚至可能已經熟悉Spring Data Cassandra。 由于我已經寫了很多關于該主題的文章,所以我只討論了Cassandra在需要上下文的地方如何工作。 如果您沒有此背景信息,我建議您閱讀Spring Data Cassandra入門,在該文章中我顯然談到了使用Spring Data Cassandra,但是與本文相比,我對Cassandra的工作原理也進行了更詳盡的解釋。 還有Datastax學院 ,它提供了一些非常有用的資源來學習如何自己使用Cassandra。

首先,依賴性。

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>com.datastax.cassandra</groupId><artifactId>cassandra-driver-core</artifactId><version>3.4.0</version></dependency><dependency><groupId>com.datastax.cassandra</groupId><artifactId>cassandra-driver-mapping</artifactId><version>3.4.0</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.4</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.7</version></dependency> </dependencies>

和往常一樣,我使用Spring Boot只是因為我們剝奪了自己的Spring Data并不意味著我們需要從所有Spring庫中完全擺脫掉。 這里與Datastax相關的依賴關系是cassandra-driver-core和cassandra-driver-mapping 。 顧名思義, cassandra-driver-core提供了與Cassandra交互的核心功能,例如建立會話和編寫查詢。 cassandra-driver-mapping不是查詢Cassandra所必需的,但確實提供了一些對象映射,它與核心驅動程序一起將用作ORM,而不僅僅是允許我們執行CQL語句。

現在,我們已經對依賴項進行了排序,下一步是連接到Cassandra,以便我們實際上可以開始查詢它了。

@Configuration public class CassandraConfig {@Beanpublic Cluster cluster(@Value("${cassandra.host:127.0.0.1}") String host,@Value("${cassandra.cluster.name:cluster}") String clusterName,@Value("${cassandra.port:9042}") int port) {return Cluster.builder().addContactPoint(host).withPort(port).withClusterName(clusterName).build();}@Beanpublic Session session(Cluster cluster, @Value("${cassandra.keyspace}") String keyspace)throws IOException {final Session session = cluster.connect();setupKeyspace(session, keyspace);return session;}private void setupKeyspace(Session session, String keyspace) throws IOException {final Map<String, Object> replication = new HashMap<>();replication.put("class", "SimpleStrategy");replication.put("replication_factor", 1);session.execute(createKeyspace(keyspace).ifNotExists().with().replication(replication));session.execute("USE " + keyspace);// String[] statements = split(IOUtils.toString(getClass().getResourceAsStream("/cql/setup.cql")), ";");// Arrays.stream(statements).map(statement -> normalizeSpace(statement) + ";").forEach(session::execute);}@Beanpublic MappingManager mappingManager(Session session) {final PropertyMapper propertyMapper =new DefaultPropertyMapper().setNamingStrategy(new DefaultNamingStrategy(LOWER_CAMEL_CASE, LOWER_SNAKE_CASE));final MappingConfiguration configuration =MappingConfiguration.builder().withPropertyMapper(propertyMapper).build();return new MappingManager(session, configuration);} }

與使用Spring Data的類似設置相比,這里的核心要多一些(與Spring Boot的自動配置結合使用時,甚至不需要該類),但是該類本身非常簡單。 此處顯示的Cluster和Session Bean的基本設置是應用程序正常工作所需的最低要求,并且對于您編寫的任何應用程序都可能保持不變。 提供了更多方法,因此您可以添加任何其他配置以使其適合您的用例。

通過使用來自值application.properties我們設置的主機地址,集群名和端口Cluster 。 然后,將Cluster用于創建Session 。 執行此操作時,有兩個選項可供選擇,是否設置默認鍵空間。 如果要設置默認鍵空間,則只需使用以下代碼即可。

@Bean public Session session(Cluster cluster, @Value("${cassandra.keyspace}") String keyspace) throws IOException {final Session session = cluster.connect(keyspace);// any other setupreturn session; }

密鑰空間被傳遞到connect方法中,該方法將創建一個Session ,然后執行USE <keyspace>從而設置默認的密鑰空間。 這依賴于創建會話之前存在的鍵空間,如果不存在,則在執行USE語句時它將失敗。

如果您不知道啟動時是否存在鍵空間,或者您肯定要基于屬性文件中的鍵空間值動態創建鍵空間,則需要調用connect而不指定鍵空間。 然后,您將需要自己創建它,以便實際使用。 為此,請使用SchemaBuilder提供的createKeyspace方法。 以下是用于創建密鑰空間的CQL語句。

CREATE KEYSPACE IF NOT EXISTS <keyspace> WITH REPLICATION = { 'class':'SimpleStrategy', 'replication_factor':1 };

我還再次在下面添加了鍵空間代碼,因為它離現在有點遠。

private void setupKeyspace(Session session, String keyspace) throws IOException {final Map<String, Object> replication = new HashMap<>();replication.put("class", "SimpleStrategy");replication.put("replication_factor", 1);session.execute(createKeyspace(keyspace).ifNotExists().with().replication(replication));session.execute("USE " + keyspace); }

SchemaBuilder非常好用,易于使用,在您瀏覽CQL時看起來非常相似。 我們添加一個ifNotExists條款和先調用設置復制的因素with ,然后通過一個Map<String, Object>進入replicationMethod 。 該映射需要包含類和復制因子,基本上使用此處顯示的鍵,但是將映射的值更改為您需要的值。 不要忘記execute該語句,然后告訴會話使用剛創建的鍵空間。 不幸的是,沒有更好的方法來手動設置默認鍵空間,并且執行USE語句是唯一的選擇。

接下來是關于設置默認鍵空間的前兩個選項。 如果我們選擇完全不設置默認鍵空間,則需要在創建的每個表和執行的每個查詢之前添加鍵空間。 Datastax提供了向查詢以及映射實體添加鍵空間名稱的方法,這并不難。 我不會再進一步??討論這個主題,但是要知道,如果正確設置了其他所有內容,則不設置鍵空間不會阻止您的應用程序正常工作。

設置鍵空間后,我們就可以創建表了。 有兩種方法可以做到這一點。 一種是執行某些CQL語句,無論它們是Java代碼中的字符串還是從外部CQL腳本中讀取的字符串。 二,使用SchemaBuilder創建它們。

讓我們先來看一下執行CQL語句,或更準確地說是從CQL文件執行它們。 您可能已經注意到,在原始示例中我留下了一些注釋掉的代碼,如果沒有注釋,該代碼將找到一個名為setup.cql的文件,讀出一個CQL語句,執行它,然后移至下一條語句。 又來了。

String[] statements = split(IOUtils.toString(getClass().getResourceAsStream("/cql/setup.cql")), ";"); Arrays.stream(statements).map(statement -> normalizeSpace(statement) + ";").forEach(session::execute);

下面是創建Cassandra表的文件中包含的CQL。

REATE TABLE IF NOT EXISTS people_by_country(country TEXT,first_name TEXT,last_name TEXT,id UUID,age INT,profession TEXT,salary INT,PRIMARY KEY((country), first_name, last_name, id) );

主鍵由country , first_name , last_name和id字段組成。 分區鍵僅由country字段組成,并且聚類列是鍵中的其余鍵,僅出于唯一性而包含id ,因為您顯然可以使人具有相同的名字。 在我之前的文章Spring Data Cassandra入門中,我更深入地討論了主鍵主題。

此代碼利用commons-io和commons-lang3依賴性。 如果我們不是以這種方式執行CQL,則可以刪除這些依賴關系(在本文的上下文中)。

關于使用SchemaBuilder呢? 我沒有在原始代碼段中包含任何用于創建表的代碼,因為我在玩耍并試圖找出放置它的最佳位置,目前我將其粘貼在存儲庫中,但我仍然不相信這就是完美的地方。 無論如何,我會將代碼粘貼到此處,以便我們現在可以查看它,然后稍后在它重新出現時可以跳過它。

private void createTable(Session session) {session.execute(SchemaBuilder.createTable(TABLE).ifNotExists().addPartitionKey("country", text()).addClusteringColumn("first_name", text()).addClusteringColumn("last_name", text()).addClusteringColumn("id", uuid()).addColumn("age", cint()).addColumn("profession", text()).addColumn("salary", cint())); }

這與上面顯示的CQL非常匹配。 我們可以使用addPartitionKey和addClusteringColumn定義不同的列類型, addClusteringColumn標準字段創建主鍵和addColumn 。 還有許多其他方法,例如addStaticColumn和withOptions允許您隨后調用clusteringOrder來定義集群列的排序方向。 調用這些方法的順序非常重要,因為分區鍵和群集列將按照調用它們各自方法的順序來創建。 Datastax還提供DataType類,以使定義列類型更加容易,例如,將text與TEXT匹配,將cint與INT匹配。 與上一次使用SchemaBuilder ,一旦我們對表設計感到滿意,就需要execute它。

在MappingManager ,下面是創建Bean的代碼段。

@Bean public MappingManager mappingManager(Session session) {final PropertyMapper propertyMapper =new DefaultPropertyMapper().setNamingStrategy(new DefaultNamingStrategy(LOWER_CAMEL_CASE, LOWER_SNAKE_CASE));final MappingConfiguration configuration =MappingConfiguration.builder().withPropertyMapper(propertyMapper).build();return new MappingManager(session, configuration); }

MappingManager bean來自cassandra-driver-mapping依賴項,并將ResultSet映射到一個實體(稍后我們將進行介紹)。 現在,我們只需要創建bean。 如果對Cassandra中沒有分隔符的Java駝峰大小寫轉換為所有小寫字母的默認命名策略不滿意,則需要設置自己的名字。 為此,我們可以傳入DefaultNamingStrategy來定義我們在Java類中使用的情況以及在Cassandra中使用的情況。 由于在Java中通常使用駝峰大小寫,因此我們傳入LOWER_CAMEL_CASE并且由于我喜歡在Cassandra中使用蛇形大小寫,因此我們可以使用LOWER_SNAKE_CASE (可以在NamingConventions類中找到)。 較低的引用指定字符串中第一個字符的大小寫,因此LOWER_CAMEL_CASE表示firstName而UPPER_CAMEL_CASE表示FirstName 。 DefaultPropertyMapper帶有用于特定配置的額外方法,但是MappingConfiguration僅具有一項工作,即接收要傳遞給MappingManager的PropertyMapper 。

我們接下來要看的是將保留到Cassandra并從Cassandra中檢索到的實體,從而節省了我們手動設置插入值和轉換讀取結果的工作量。 Datastax驅動程序為我們提供了一種相對簡單的方法,即通過使用批注來標記屬性(例如要映射到的表的名稱),與Cassandra列匹配的字段以及主鍵所包含的字段,來實現上述目的。

@Table(name = "people_by_country") public class Person {@PartitionKeyprivate String country;@ClusteringColumnprivate String firstName;@ClusteringColumn(1)private String lastName;@ClusteringColumn(2)private UUID id;private int age;private String profession;private int salary;private Person() {}public Person(String country, String firstName, String lastName, UUID id, int age, String profession, int salary) {this.country = country;this.firstName = firstName;this.lastName = lastName;this.id = id;this.age = age;this.profession = profession;this.salary = salary;}// getters and setters for each property// equals, hashCode, toString }

該實體表示@Table表示的people_by_country表。 我再次將下表的CQL放在下面以供參考。

CREATE TABLE IF NOT EXISTS people_by_country(country TEXT,first_name TEXT,last_name TEXT,id UUID,age INT,profession TEXT,salary INT,PRIMARY KEY((country), first_name, last_name, id) );

該@Table注釋必須指定實體代表表的名稱,還配備了根據您的要求,如各種其它選項keyspace ,如果你不想使用默認密鑰空間的Session bean被配置為使用和caseSensitiveTable這是不言自明的。

那主鍵呢? 如上文所述,主鍵由一個分區鍵組成,分區鍵本身包含一個或多個列和/或群集列。 為了匹配上面定義的Cassandra表,我們在必填字段中添加了@PartitionKey和@ClusteringColumn批注。 這兩個注釋都具有一個屬性,即value ,它指定列在主鍵中的顯示順序。 默認值為0 ,這就是為什么某些注釋不包含值的原因。

使該實體正常工作的最后一個要求是getter,setter和默認構造函數,以便映射器能夠完成任務。 如果您不希望任何人訪問默認構造函數,則默認構造函數可以是私有的,因為映射器使用反射來檢索它。 您可能不想在您的實體上設置二傳手,因為您希望對象是不變的,但是不幸的是,您對此無能為力,而您只需要讓這場戰斗就可以。 盡管我個人認為這很好,因為您可以(也許應該)將實體轉換為可以在應用程序中傳遞的另一個對象,而無需任何實體注釋,因此無需了解數據庫本身。 然后,該實體可以保持可變,而您傳遞的另一個對象可以完全按照您的期望工作。

在繼續之前,我想提的最后一件事。 還記得我們之前定義的DefaultNamingConvention嗎? 這意味著我們的字段將與正確的列匹配,而無需在實體中進行任何額外的工作。 如果您沒有執行此操作,或者想為列名提供一個不同的字段名,則可以使用@Column批注并在其中指定。

我們幾乎擁有構建示例應用程序所需的所有組件。 倒數第二個組件正在創建一個存儲庫,其中將包含用于持久存儲和從Cassandra讀取數據的所有邏輯。 我們將利用我們先前創建的MappingManager bean和我們放置在實體上的注釋將ResultSet轉換為實體,而無需自己做任何其他事情。

@Repository public class PersonRepository {private Mapper<Person> mapper;private Session session;private static final String TABLE = "people_by_country";public PersonRepository(MappingManager mappingManager) {createTable(mappingManager.getSession());this.mapper = mappingManager.mapper(Person.class);this.session = mappingManager.getSession();}private void createTable(Session session) {// use SchemaBuilder to create table}public Person find(String country, String firstName, String secondName, UUID id) {return mapper.get(country, firstName, secondName, id);}public List<Person> findAll() {final ResultSet result = session.execute(select().all().from(TABLE));return mapper.map(result).all();}public List<Person> findAllByCountry(String country) {final ResultSet result = session.execute(select().all().from(TABLE).where(eq("country", country)));return mapper.map(result).all();}public void delete(String country, String firstName, String secondName, UUID id) {mapper.delete(country, firstName, secondName, id);}public Person save(Person person) {mapper.save(person);return person;} }

通過構造函數注入MappingManager并調用Person類的mapper方法,將返回一個Mapper<Person> ,它將親自處理我們所有的映射需求。 我們還需要檢索Session才能執行查詢,該查詢很好地包含在我們注入的MappingManager 。

對于三個查詢,我們直接依賴于映射器與Cassandra進行交互,但這僅適用于單個記錄。 通過接受組成Person實體的主鍵的值來get , save和delete每個作品,并且必須以正確的順序輸入它們,否則您將遇到意想不到的結果,否則將引發異常。

在其他情況下,需要先執行查詢,然后才能調用映射器,以將返回的ResultSet轉換為實體或實體集合。 我已經使用QueryBuilder編寫查詢,并且我也為這篇文章選擇不編寫準備好的語句。 盡管在大多數情況下您應該使用準備好的語句,但我想我將來會在單獨的文章中介紹這些語句,盡管它們足夠相似,并且QueryBuilder仍然可以使用,所以我相信您可以根據需要自行解決。

QueryBuilder提供了靜態方法來創建select , insert , update和delete語句,然后可以將它們鏈接在一起以構建查詢(我知道這很明顯)。 當需要手動創建自己的查詢而不依賴于來自Cassandra存儲庫的推斷查詢時,此處使用的QueryBuilder也可以在Spring Data Cassandra中使用。

創建這個小應用程序的最后一步實際上是在運行它。 由于我們使用的是Spring Boot,因此我們只需添加標準@SpringBootApplication并運行該類。 我已經在下面做了這些,以及使用CommandLineRunner在存儲庫中執行了這些方法,以便我們可以檢查它們是否在執行我們期望的工作。

@SpringBootApplication public class Application implements CommandLineRunner {@Autowiredprivate PersonRepository personRepository;public static void main(String args[]) {SpringApplication.run(Application.class);}@Overridepublic void run(String... args) {final Person bob = new Person("UK", "Bob", "Bobbington", UUID.randomUUID(), 50, "Software Developer", 50000);final Person john = new Person("UK", "John", "Doe", UUID.randomUUID(), 30, "Doctor", 100000);personRepository.save(bob);personRepository.save(john);System.out.println("Find all");personRepository.findAll().forEach(System.out::println);System.out.println("Find one record");System.out.println(personRepository.find(john.getCountry(), john.getFirstName(), john.getLastName(), john.getId()));System.out.println("Find all by country");personRepository.findAllByCountry("UK").forEach(System.out::println);john.setProfession("Unemployed");john.setSalary(0);personRepository.save(john);System.out.println("Demonstrating updating a record");System.out.println(personRepository.find(john.getCountry(), john.getFirstName(), john.getLastName(), john.getId()));personRepository.delete(john.getCountry(), john.getFirstName(), john.getLastName(), john.getId());System.out.println("Demonstrating deleting a record");System.out.println(personRepository.find(john.getCountry(), john.getFirstName(), john.getLastName(), john.getId()));} }

run方法包含一些打印行,因此我們可以看到發生了什么,下面是它們的輸出。

Find all Person{country='US', firstName='Alice', lastName='Cooper', id=e113b6c2-5041-4575-9b0b-a0726710e82d, age=45, profession='Engineer', salary=1000000} Person{country='UK', firstName='Bob', lastName='Bobbington', id=d6af6b9a-341c-4023-acb5-8c22e0174da7, age=50, profession='Software Developer', salary=50000} Person{country='UK', firstName='John', lastName='Doe', id=f7015e45-34d7-4f25-ab25-ca3727df7759, age=30, profession='Doctor', salary=100000}Find one record Person{country='UK', firstName='John', lastName='Doe', id=f7015e45-34d7-4f25-ab25-ca3727df7759, age=30, profession='Doctor', salary=100000}Find all by country Person{country='UK', firstName='Bob', lastName='Bobbington', id=d6af6b9a-341c-4023-acb5-8c22e0174da7, age=50, profession='Software Developer', salary=50000} Person{country='UK', firstName='John', lastName='Doe', id=f7015e45-34d7-4f25-ab25-ca3727df7759, age=30, profession='Doctor', salary=100000}Demonstrating updating a record Person{country='UK', firstName='John', lastName='Doe', id=f7015e45-34d7-4f25-ab25-ca3727df7759, age=30, profession='Unemployed', salary=0}Demonstrating deleting a record null

我們可以看到findAll返回了所有記錄,而find僅檢索了與輸入主鍵值匹配的記錄。 findAllByCountry已排除了愛麗絲,僅從英國找到了記錄。 在現有記錄上再次調用save將更新記錄,而不是插入。 最后, delete將從數據庫中刪除此人的數據(例如刪除facebook?!?!)。

多數民眾贊成在一個包裝。

將來,我將嘗試編寫一些后續文章,因為我們可以使用本文中未涉及的Datastax驅動程序來做一些更有趣的事情。 我們在這里介紹的內容足以使您邁出使用驅動程序的第一步,并開始從您的應用程序查詢Cassandra。

在我們開始之前,我想對Datastax驅動程序和Spring Data Cassandra進行一些比較。

與我認為的Spring Data Cassandra相比,Datastax驅動程序缺乏對創建表的支持。 Spring Data能夠僅基于您的實體來創建表的事實消除了所有這些工作,基本上可以重寫您已經編寫的內容。 顯然,如果您不想使用實體注釋,那么區別就消失了,因為您將需要在Datastax和Spring Data中手動創建表。

實體的設計方式和使用的注釋也大不相同。 這一點與我先前提出的觀點緊密相關。 因為Spring Data可以為您創建表,所以它更加需要更精確的注釋,這些注釋允許您指定表的設計,例如,集群列的排序順序。 顯然,這會使類變得雜亂無章,通常不會出現大量的注釋。

Spring Data還為標準查詢(如findAll和插入實體集合)提供了更好的支持。 顯然,這并不是世界末日,實現這些目標將花費很少的精力,但這幾乎總結了Datastax驅動程序和Spring Data Cassandra之間的主要區別。

Spring Data更加易于使用。 我認為關于這個話題真的沒有什么要說的。 由于Spring Data Cassandra是基于Datastax驅動程序構建的,因此它顯然可以執行驅動程序可以執行的所有操作,如果缺少所需的任何內容,則可以直接訪問Datastax類并執行所需的操作。 但是不應忽視Spring Data提供的便利,而且我認為我什至沒有覆蓋它提供的一些更有用的部分,因為本文僅涵蓋了基礎知識。 甚至不要讓我開始使用Spring Boot的自動配置以及Cassandra存儲庫為您生成的推斷查詢后,它變得多么容易。

我應該停止……這變成了咆哮。

總之,使用Datastax驅動程序連接和查詢Cassandra數據庫是相對簡單的。 建立與Cassandra的連接,創建所需的實體,并編寫使用前者的存儲庫,然后便擁有了進行所需的一切。 我們還將Datastax驅動程序與Spring Data Cassandra進行了比較,后者幾乎可以歸結為它,Datastax可以滿足您的需求,但是Spring Data使其更容易。

這篇文章中使用的代碼可以在我的GitHub上找到 。

如果您發現此帖子有幫助,并希望了解我的最新帖子,那么可以通過@LankyDanDev在Twitter上關注我。

翻譯自: https://www.javacodegeeks.com/2018/04/interacting-with-cassandra-using-the-datastax-java-driver.html

總結

以上是生活随笔為你收集整理的使用Datastax Java驱动程序与Cassandra进行交互的全部內容,希望文章能夠幫你解決所遇到的問題。

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

最近高清中文在线字幕在线观看 | 国产九九热视频 | 久久三级毛片 | 伊人伊成久久人综合网小说 | 在线成人av | 91av资源网| 国产精品久久久久永久免费看 | 欧美日韩精品网站 | 国产精品久久久久av免费 | 91精品国产高清自在线观看 | 色综合亚洲精品激情狠狠 | 免费视频成人 | 久草在线免费资源站 | 久久综合色一综合色88 | 超碰公开在线观看 | 日韩一区二区三区视频在线 | 国产黄av | 97香蕉超级碰碰久久免费软件 | 伊人色综合久久天天网 | 亚洲粉嫩av| 超碰99人人| 五月婷在线视频 | avv天堂| 最近高清中文字幕在线国语5 | 日日日天天天 | 欧洲视频一区 | 日日夜夜精品视频 | 久久免费视频在线 | 国产精久久久久久久 | 欧美一级黄色片 | av一区二区三区在线 | 久久久久国产精品免费免费搜索 | 国产一级免费电影 | 在线观看国产www | 日韩在线视频二区 | 日本久热| 久久久久久激情 | 97超碰成人| 亚洲色图27p | av成年人电影 | 91一区一区三区 | 婷婷色在线视频 | 狠狠做深爱婷婷综合一区 | 成人av片在线观看 | 伊人色**天天综合婷婷 | 伊在线视频 | 国产免费作爱视频 | 久久99九九99精品 | 最新日韩在线观看视频 | 瑞典xxxx性hd极品 | 成人一级在线观看 | 亚洲综合色婷婷 | 久久精品一区 | av不卡中文字幕 | 国产精品第2页 | 日韩精品欧美精品 | 一级黄色免费网站 | 久久成人午夜 | 亚洲国产av精品毛片鲁大师 | 最近免费中文字幕大全高清10 | 午夜精品久久久久久久久久久久 | 欧美aaa一级 | 五月婷婷久草 | 在线观看成人国产 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 免费福利视频导航 | 国产打女人屁股调教97 | 黄色国产成人 | 日韩在线免费播放 | 亚洲欧洲精品一区二区精品久久久 | 欧美色图30p | 日韩在线视频网站 | a爱爱视频 | 日韩字幕在线 | 国产精品完整版 | www久久99 | 日韩激情免费视频 | 久久久久久久久黄色 | 天天干天天操天天搞 | 国产亚洲精品综合一区91 | 91丨九色丨蝌蚪丨对白 | 91精品一区在线观看 | 成片免费| 亚洲激情 欧美激情 | 91桃色在线免费观看 | 18久久久久久 | 国产精品手机视频 | 天天操天天舔天天干 | 欧美一区二视频在线免费观看 | 国产精品久久久久久久久久三级 | 欧美一级视频免费 | 日韩中文在线电影 | 97成人资源| 成人av一区二区在线观看 | 夜色资源网 | 国产美女在线精品免费观看 | 国产91精品一区二区麻豆网站 | 欧美日韩国产一区二区三区 | 在线观看视频91 | 少妇性xxx | 探花视频在线版播放免费观看 | 国产精品ⅴa有声小说 | 欧美不卡在线 | 欧美 日韩 成人 | 亚洲最大免费成人网 | 久久久69| 国产精品成人久久 | 久久无码av一区二区三区电影网 | 麻豆精品视频 | 中文字幕久久亚洲 | 国产中文视频 | 永久免费毛片 | 天堂av色婷婷一区二区三区 | 就要干b | 亚洲 中文 欧美 日韩vr 在线 | 丁香九月婷婷综合 | 国产录像在线观看 | 久久久久在线 | 国产精品一区二区免费在线观看 | 国产精品婷婷午夜在线观看 | 啪啪免费视频网站 | 五月天婷婷免费视频 | 99精品欧美一区二区三区 | 99免费看片 | 亚洲成人一区 | 国产一区视频导航 | 亚洲,播放 | www久久久| 免费高清男女打扑克视频 | 国产网站在线免费观看 | 国产不卡在线播放 | 久精品视频在线 | 黄色软件在线观看免费 | 国产精品 国产精品 | 成人黄色在线电影 | 精品国产乱码久久久久久1区2匹 | 日韩中文字幕第一页 | 国产91成人在在线播放 | 深爱激情丁香 | 成年人免费在线观看网站 | 色射爱 | 欧美成人黄| 超碰人人做| 色无五月 | 又长又大又黑又粗欧美 | 欧美美女激情18p | h动漫中文字幕 | 视频二区在线视频 | 视频在线观看亚洲 | 日韩动态视频 | 精品久久久久久久久久久久 | 成人wwwxxx视频| 国产精品伦一区二区三区视频 | 国产精品免费看久久久8精臀av | 成人免费观看视频大全 | 午夜精品一区二区三区在线观看 | 伊人黄| 中文日韩在线视频 | 天天操天天吃 | 亚洲第一av在线 | 91专区在线观看 | 国产一二三四在线观看视频 | 在线免费国产视频 | 国产成人一区二区三区 | 亚洲精品麻豆视频 | 亚洲高清视频在线播放 | 免费av电影网站 | 日本乱码在线 | 亚洲乱亚洲乱妇 | 99久视频 | 久久久91精品国产一区二区精品 | 免费的国产精品 | 日韩系列 | 免费av在线网站 | 精品一区二三区 | 九九热av | 97免费在线观看视频 | 中文字幕第 | 六月丁香综合 | 免费观看www7722午夜电影 | 日韩在线视频播放 | 五月天婷婷视频 | 在线观看一区二区精品 | 国产不卡一二三区 | 国产一区视频免费在线观看 | 日韩精品视频免费 | 亚洲黄色av网址 | 91天天操 | 欧美日韩国产高清视频 | 久久线视频 | 天天操夜操 | 日韩综合一区二区三区 | 97超碰成人 | 毛片a级片 | 97偷拍在线视频 | 一区二区不卡在线观看 | 中文字幕在线观看资源 | 成人av亚洲| 国产精品不卡 | 亚洲国内精品在线 | 欧美精品久久久久久久久免 | 日本丰满少妇免费一区 | 国产精品资源 | 91av视频在线免费观看 | 91在线小视频 | 99在线播放| 亚洲一区日韩精品 | 国产精品高潮呻吟久久av无 | 亚洲欧美国产日韩在线观看 | 国产精品18久久久久久久 | 粉嫩aⅴ一区二区三区 | 亚洲精品国产第一综合99久久 | 玖玖爱免费视频 | 精品视频免费 | 精品视频在线看 | 91视频下载 | 大胆欧美gogo免费视频一二区 | 日韩精品一区二区三区三炮视频 | 成全免费观看视频 | 超碰在线个人 | 在线观看www.| 五月天婷婷综合 | 亚洲天堂网视频在线观看 | 日韩欧美在线高清 | 日韩网站在线免费观看 | 亚洲欧美激情精品一区二区 | 午夜国产一区二区三区四区 | 在线观看免费一级片 | 亚洲好视频 | 麻豆视频在线免费看 | 五月婷婷综合激情网 | 久草免费色站 | 亚洲成人av电影 | 国产亚洲情侣一区二区无 | 男女啪啪免费网站 | 一区二区三区在线视频观看58 | 97国产| 久久综合久久久 | 成人av免费在线观看 | 免费精品视频 | 精品视频在线免费观看 | 超级碰视频 | 操操操日日日干干干 | 欧美少妇影院 | 日日干网 | 91麻豆看国产在线紧急地址 | 午夜国产福利在线 | 在线亚洲午夜片av大片 | 国产又黄又硬又爽 | 欧美一二三视频 | 国产r级在线观看 | 黄色三级在线看 | 中文字幕乱码一区二区 | 欧美日韩久久一区 | 天天操天天弄 | 少妇bbbb| 精品国产伦一区二区三区 | 黄污视频大全 | 九九九在线观看视频 | 在线观看视频在线 | 波多野结衣视频一区二区三区 | 五月婷婷综合在线视频 | 亚洲欧美国产精品va在线观看 | 99热这里只有精品1 av中文字幕日韩 | 国产精品亚洲综合久久 | 日本一区二区三区视频在线播放 | 日韩com| 亚洲视频免费在线看 | 九九视频在线观看视频6 | 色综合久久久久综合体桃花网 | 三级av在线 | 黄色软件大全网站 | 久热av在线 | 国产精品中文字幕在线播放 | 国产在线黄色 | 国产精品免费在线视频 | 国产99久 | 精品在线观看国产 | a v在线观看 | 最新中文字幕视频 | 亚洲精品在线观看中文字幕 | 99免在线观看免费视频高清 | 欧美日韩中文字幕综合视频 | 国产亚洲视频系列 | 精品国产一区二区三区免费 | 免费三级在线 | 久久婷婷一区 | 亚洲第一av在线 | 国产精品毛片一区视频 | 天天干天天怕 | 国产精品久久久久一区二区三区 | 九九久 | 最新国产在线视频 | 国产麻豆精品95视频 | 婷婷色在线 | 午夜精品99久久免费 | 91成人免费看| 日日爱影视 | 毛片a级片| 最新中文字幕在线资源 | 综合天天网 | 成人av电影免费观看 | www.夜夜操 | 五月色丁香 | 国产高清精品在线 | 最近高清中文字幕在线国语5 | 国产精品视频免费 | 国产精品一区二区三区在线免费观看 | 亚洲另类视频在线 | 中文字幕一区二区三区四区视频 | 亚洲另类xxxx | 天天操天天操天天操天天 | 色偷偷88欧美精品久久久 | 成人免费观看视频网站 | 99精品国产一区二区三区不卡 | 97成人啪啪网 | 久久精品男人的天堂 | 久久,天天综合 | 久久久久久高清 | 欧美成年黄网站色视频 | 欧美性极品xxxx做受 | 99色免费视频 | 亚洲综合小说电影qvod | 免费试看一区 | 国产成人精品一区在线 | 久草在线免费看视频 | 爱情影院aqdy鲁丝片二区 | 欧美激精品 | 久久精品国产一区二区电影 | 黄视频色网站 | 成人午夜电影在线观看 | 最新日韩视频 | 五月天综合网站 | 久久99精品国产99久久6尤 | 8x成人在线 | 天天操天天操天天 | 中文字幕在线观看91 | 在线播放精品一区二区三区 | 日韩视频在线一区 | 亚洲国产精品免费 | 激情综合一区 | 在线小视频 | 成人a在线观看高清电影 | 免费观看的av网站 | 97精品欧美91久久久久久 | 亚洲国产中文字幕 | 亚洲精选视频在线 | 久久精品视频在线看 | 国产真实在线 | 在线欧美最极品的av | 亚洲欧美日韩国产一区二区 | 成人av电影免费在线播放 | 国产大尺度视频 | 永久免费av在线播放 | 99九九视频 | 国产正在播放 | 狠狠网| 四虎最新域名 | 狠狠久久综合 | 在线免费观看国产 | 在线观看亚洲国产 | 国产一区私人高清影院 | 亚洲欧美婷婷六月色综合 | 91视频高清完整版 | 国产精品久久久久久麻豆一区 | 青青久草在线视频 | 亚洲欧洲日韩在线观看 | 国产高清不卡av | 又黄又爽又无遮挡的视频 | 免费看国产曰批40分钟 | 成人网页在线免费观看 | 正在播放五月婷婷狠狠干 | 国产在线国偷精品产拍免费yy | 97视频中文字幕 | 国产一区在线观看免费 | 日韩高清在线不卡 | 午夜在线观看影院 | 国产精品欧美久久久久三级 | 欧美性高跟鞋xxxxhd | 日韩视频在线观看免费 | 91精品一区二区三区久久久久久 | 麻豆超碰 | 亚洲五月花| 香蕉色综合 | 亚洲视频综合在线 | 久久成人免费电影 | 在线看日韩av | 亚洲精品在线观看的 | 国产福利一区二区三区在线观看 | 在线久久| 性色在线视频 | av电影一区二区三区 | 国产精品不卡在线观看 | 99精品欧美一区二区三区 | 最近最新中文字幕视频 | 国产黄免费 | 欧美美女一级片 | 中文字幕乱码电影 | 天天舔夜夜操 | 欧美精品久久久久久久久老牛影院 | 丁香色婷 | 日韩sese | 欧美精品在线观看免费 | 精品在线亚洲视频 | 一区二区三区在线免费播放 | 中文字幕在线播出 | 人人插人人爱 | 成人app在线免费观看 | 久久99偷拍视频 | 国产午夜三级一区二区三 | 人人爽人人爽av | 在线观看理论 | 成 人 黄 色视频免费播放 | 九九九热精品免费视频观看 | 91av免费观看 | 国产精品免费看久久久8精臀av | 欧美视频不卡 | 国产精品99久久久 | 99热精品国产 | 日韩av电影免费在线观看 | 国产一区二区三区四区在线 | 美国av大片 | 亚洲天天在线 | 天天干天天干天天干天天干天天干天天干 | 国产精品淫片 | 波多野结衣在线视频一区 | 国产欧美日韩视频 | 国产精品成人一区二区三区吃奶 | 日韩欧美一区二区在线观看 | 国产精品久久久久av免费 | 精品毛片一区二区免费看 | 天天天天综合 | 国产老太婆免费交性大片 | 亚洲爱av| 久久久久久久久久久免费av | 婷久久 | 在线看毛片网站 | 精品免费久久久久 | 欧女人精69xxxxxx| 免费97视频| 久久视频这里有精品 | 精品字幕在线 | 国产视频 亚洲视频 | 亚洲国产久 | 国产精品一区二区av | 在线精品一区二区 | 91麻豆产精品久久久久久 | 亚洲美女免费精品视频在线观看 | 久久午夜视频 | 国产馆在线播放 | 2022久久国产露脸精品国产 | 天天曰天天爽 | 亚洲在线观看av | 午夜av在线播放 | 伊人国产在线观看 | 亚洲精品短视频 | 精品国产中文字幕 | 午夜精品福利一区二区三区蜜桃 | 91亚洲精品久久久蜜桃网站 | 亚洲干视频在线观看 | 在线三级av| 日韩精品视频免费专区在线播放 | 91污视频在线观看 | 91精品国产自产老师啪 | 亚洲麻豆精品 | 一本一本久久aa综合精品 | 黄色一级免费电影 | 亚洲va欧美va国产va黑人 | 涩涩网站在线播放 | 国产玖玖精品视频 | 激情网在线视频 | 中文字幕在线观看完整版电影 | 国产婷婷视频在线 | 日韩美精品视频 | 干亚洲少妇 | 免费合欢视频成人app | 97福利视频| 国产精品一区二区三区视频免费 | 在线视频电影 | 久久tv| 91亚洲国产成人久久精品网站 | 婷婷久久综合九色综合 | 狠狠干激情 | 国产一区电影在线观看 | 日韩中文三级 | 99热这里只有精品8 久久综合毛片 | 天天爽夜夜操 | 中文字幕永久免费 | 91字幕 | 久久综合九色99 | 天天操天天谢 | 久久福利精品 | 91精品在线免费视频 | 日韩伦理片一区二区三区 | 亚洲激精日韩激精欧美精品 | 一级黄色a视频 | 在线观看av片 | 日韩电影在线观看一区二区 | 国产在线播放不卡 | 久久久免费毛片 | 亚洲精品视频网站在线观看 | 日本最大色倩网站www | 日韩一二区在线观看 | 色婷婷视频 | 午夜精品福利影院 | 国产精品 中文字幕 亚洲 欧美 | 欧美资源 | 日韩激情片在线观看 | 国产999精品久久久久久麻豆 | 五月婷婷视频在线观看 | 亚洲精品美女免费 | 日韩偷拍精品 | 久久精品99 | 国产色妞影院wwwxxx | 亚洲天堂首页 | 精品一区 精品二区 | 国产综合片 | 久草免费电影 | 国产精品普通话 | 日本精品久久久久中文字幕5 | av不卡中文字幕 | www.xxxx变态.com | 久久国产精品久久国产精品 | 精品国产乱码久久久久久久 | 日本中文字幕在线 | 久草视频精品 | 国产精品久久久久久久av电影 | 麻豆视频免费入口 | 国产专区一 | 国产视频首页 | 九九在线播放 | 国产精品福利小视频 | 国产免费黄视频在线观看 | 日韩一级成人av | 天天爽夜夜爽精品视频婷婷 | www.亚洲精品在线 | 亚洲精品啊啊啊 | 亚洲精品成人 | 日韩av免费在线电影 | 色小说在线 | 亚洲午夜大片 | 久草久草在线 | 91成人亚洲 | 麻豆一区在线观看 | 人人射人人爱 | 国产无遮挡又黄又爽在线观看 | 国产成人精品三级 | 国产人成看黄久久久久久久久 | 成年人黄色在线观看 | 国产精品久久久毛片 | 999视频在线播放 | 激情xxxx| 91精品久久久久久综合五月天 | 日韩中文字幕在线看 | 97香蕉久久国产在线观看 | 麻豆免费观看视频 | 国产精品久久久久久久久岛 | 欧美日韩国产精品一区二区三区 | 国产高清免费在线观看 | 日韩色高清 | 97日日| 日日操日日插 | 国产91小视频 | 久草色在线观看 | 在线精品视频在线观看高清 | 国产精品高潮在线观看 | 色婷婷国产 | 国产专区日韩专区 | 国产精品s色 | 免费福利视频网 | 久久99精品久久久久久秒播蜜臀 | 91福利在线观看 | 亚洲成人国产精品 | 日日久视频 | 久久久国产在线视频 | 亚洲专区在线播放 | 久久久久久久久久久网 | 久久精品视频国产 | 久久久久国产成人免费精品免费 | 爱干视频 | 在线观看免费av网站 | 伊人永久在线 | 色综合久久久久综合99 | 久久免费黄色网址 | 中文字幕在线观看一区 | 婷婷网五月天 | 啪一啪在线 | 欧美少妇xx | 日韩视频在线一区 | 国产日韩视频在线观看 | 亚洲国产精久久久久久久 | 久久字幕精品一区 | 97色在线| 国产九色在线播放九色 | 黄污视频大全 | 亚洲欧洲精品一区二区 | 激情综合五月天 | 亚洲日日日 | 欧美一二三区在线播放 | 视频二区在线 | 日日夜夜精品免费观看 | 99re8这里有精品热视频免费 | 久久夜色精品国产亚洲aⅴ 91chinesexxx | 欧美日韩啪啪 | 97国产精品视频 | 亚洲国产精品小视频 | 色婷婷视频网 | 看毛片网站 | 国产日韩精品一区二区三区在线 | 人人射人人爽 | 福利网址在线观看 | 国产小视频免费在线观看 | 国产h在线观看 | 久久久久久久久久免费 | 99精品偷拍视频一区二区三区 | 国产精品久久久久免费观看 | 91中文字幕一区 | 97av在线视频 | 国产中文字幕免费 | 美女久久视频 | 黄色精品视频 | 最近2019年日本中文免费字幕 | 人人看黄色 | 国产精品久久久久久久久久99 | 久久视频精品在线观看 | 69av国产 | 免费av网站在线 | 欧美日韩免费一区二区 | 日韩精品中文字幕在线 | 操久在线 | 97超碰国产精品女人人人爽 | 久久不射网站 | 日日夜夜狠狠干 | av中文字幕在线播放 | 国产精品黑丝在线观看 | 久久免费视频在线观看6 | 少妇bbw搡bbbb搡bbbb | av免费网站在线观看 | 久久久久99精品国产片 | 一级欧美黄| 成人欧美亚洲 | 国产一级片不卡 | 国产自产在线视频 | 日韩精品第一区 | 久久99久久99精品免费看小说 | 五月天狠狠操 | 国产亚洲精品美女 | 波多野结衣在线播放视频 | a黄在线观看| 国产精久久久久久久 | 成人在线观看免费视频 | 天天摸天天操天天舔 | 亚洲日本va在线观看 | 国产久草在线观看 | 五月婷婷电影网 | 久久精品欧美一区 | 成人午夜电影在线观看 | 碰超在线观看 | 久久久综合香蕉尹人综合网 | 国产黄色大片 | 丁香导航| 国产黄色片网站 | 91热在线| 91精品系列 | 涩涩网站在线观看 | 丁香六月婷婷开心婷婷网 | 欧美 亚洲 另类 激情 另类 | 国产在线1区 | 欧美日韩中文在线观看 | 国产香蕉视频在线观看 | 一区二区精品视频 | 中文字幕丝袜 | 国产91电影在线观看 | www色com | 精品极品在线 | 99免费在线观看视频 | 亚洲视频在线观看 | 国产精品区一区 | 久草香蕉在线视频 | 午夜在线免费视频 | 日韩性片 | 在线国产精品一区 | 日日操夜夜操狠狠操 | 特级a毛片 | 成人免费视频免费观看 | 99精品视频在线看 | 麻豆视频网址 | 国产精品视频线看 | 激情五月播播久久久精品 | 日本特黄一级片 | 在线激情av电影 | 日韩中文字幕a | 亚洲国产字幕 | 国产精品一二 | 91免费在线 | 日韩免费视频观看 | 91夫妻自拍 | 天天做天天爱天天爽综合网 | av电影免费观看 | 国产一级黄 | 91精品啪 | 日韩免费在线观看视频 | 免费看搞黄视频网站 | 美女视频黄是免费的 | 麻豆一区二区三区视频 | 日韩av一区二区三区 | 人人天天夜夜 | 99视频免费| 久久精品8 | 亚洲乱码久久久 | 国产精品久久久毛片 | www.黄色片网站| 在线观看国产福利片 | 一区二区三区精品在线视频 | free. 性欧美.com | 久在线观看视频 | 成人欧美日韩国产 | 午夜电影久久久 | 亚洲激情综合 | 91成人免费电影 | 天天夜夜狠狠操 | 久久久精品一区二区 | 麻豆视频免费观看 | 久久国产欧美日韩 | 西西444www大胆高清图片 | 天天艹| 在线观看91精品国产网站 | 色婷婷综合久色 | 1024手机在线看 | 午夜三级理论 | 国产精品资源网 | 国产午夜激情视频 | 成片免费 | 色婷婷久久久综合中文字幕 | 久久毛片高清国产 | 色wwww| 国产在线精品福利 | 国产午夜一区 | 久久久久久高清 | 日韩色av色资源 | 一区二区视频欧美 | 91av网站在线观看 | 在线高清| 在线观看久久久久久 | 1024手机看片国产 | 日韩视频图片 | 国产精久久 | 国产黑丝袜在线 | 久久999久久| 日批网站在线观看 | 久草视频2| 国产一卡二卡在线 | 国产一区在线视频观看 | 四虎成人精品永久免费av | 成人av资源在线 | 亚洲va在线va天堂 | 黄色软件在线观看视频 | 日韩欧美精品一区 | 欧美色就是色 | 天天射夜夜爽 | 一级黄毛片 | 亚洲精品美女久久 | 黄色片网站av | 91一区一区三区 | 欧美一级电影免费观看 | 欧美日韩久久一区 | 麻豆视频在线观看 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 日韩av在线资源 | 日韩成人免费观看 | 国产香蕉视频 | 99精品视频在线免费观看 | 国产精品对白一区二区三区 | 亚洲免费成人 | 久久视频在线视频 | 免费在线观看不卡av | 精品一二| 日本久久片 | 99综合久久 | 亚洲综合色婷婷 | 在线a视频免费观看 | 国产在线观看中文字幕 | 成人黄色电影在线 | 欧美日韩一级久久久久久免费看 | 手机看片 | 91av蜜桃 | 久久久亚洲网站 | 国产视频1区2区 | 激情丁香婷婷 | 成人一区二区三区在线观看 | 婷婷午夜天 | 久久精品一区八戒影视 | 久久久久免费视频 | 久久久久国产精品午夜一区 | 97在线观看视频 | 香蕉视频网站在线观看 | 天天操天天草 | 中文在线最新版天堂 | 91九色视频导航 | 色网址99| 国产精品午夜免费福利视频 | 视频在线观看亚洲 | 日韩一区二区三区高清免费看看 | 免费av网址在线观看 | 色综合久久五月天 | 2022中文字幕在线观看 | 欧美一级黄色视屏 | 免费av免费观看 | 欧美精品久久久久久久久久丰满 | 日本免费一二三区 | 久久999久久 | 国产精品私人影院 | 久久成人人人人精品欧 | 久久免费美女视频 | 青青河边草观看完整版高清 | 一区二区三区精品久久久 | 久久视屏网 | 久久久久久久免费 | 中文成人字幕 | 欧美一级片在线免费观看 | 高清美女视频 | 香蕉影视在线观看 | 国产精品中文字幕av | 午夜av网站 | 欧美中文字幕第一页 | 日日草天天干 | 国产精品女主播一区二区三区 | 一区二区三区福利 | 日韩aⅴ视频| www免费网站在线观看 | 久久爱www.| 欧美日韩大片在线观看 | 天天操天天操一操 | 人人操日日干 | 91av视频观看 | 18+视频网站链接 | 最近免费中文字幕mv在线视频3 | 日韩专区 在线 | 日韩成人免费在线 | 色综合久久久久久久 | 久久综合中文色婷婷 | 成人精品国产免费网站 | 亚洲一区二区精品3399 | 日本久久视频 | 亚洲精品欧洲精品 | 色激情在线 | 91亚洲精品久久久中文字幕 | 天天色草| 欧美性生活久久 | 天天综合在线观看 | 香蕉网在线 | 极品国产91在线网站 | 久久这里只有精品23 | 国产精品免费久久久久久 | 亚洲第一区在线播放 | 一区二区三区电影大全 | 国产精品久久电影观看 | 久久综合狠狠综合久久激情 | 九九九九九国产 | 日韩专区在线观看 | 久久精品综合一区 | 国产一区二区三区免费视频 | 国产中文字幕在线 | 狠狠干夜夜 | 精品国精品自拍自在线 | 亚洲午夜久久久影院 | 国产免费a| 国产成人一区二区三区在线观看 | 综合网伊人 | 九九九九九九精品任你躁 | 日本黄色免费观看 | 91手机视频 | 国产精品一区二区视频 | 亚洲成人精品在线 | 首页av在线 | 九九热在线视频免费观看 | 97超视频免费观看 | 日韩中文字幕免费看 | 日日夜夜免费精品视频 | 韩国av一区 | 国产成人精品久久久 | 在线看免费 | 国产无遮挡又黄又爽在线观看 | 极品久久久久 | 色99在线 | 四虎影视久久久 | 美女在线免费观看视频 | 97免费在线观看 | 欧美性久久久久久 | 久久九九久久 | 欧美日韩国产精品一区 | 草久久久| 免费在线播放黄色 | 欧美日韩精品网站 | 亚洲久草网 | 狠狠干狠狠插 | 色av网站| 国产在线播放不卡 | 一区国产精品 | 在线视频第一页 | 欧美久久久久久久久久久久久 | 在线 国产 亚洲 欧美 | 狠狠躁夜夜a产精品视频 | 精品国产免费人成在线观看 | 日韩精品不卡在线观看 | 免费成人av电影 | 日韩在线视频网 | 波多野结衣在线观看一区 | 国产成人精品国内自产拍免费看 | 伊甸园永久入口www 99热 精品在线 | 色丁香婷婷 | 国产小视频在线观看免费 | 狠狠狠色 | 亚洲美女视频在线 | 免费美女av | 国产一区精品在线观看 | 久久精品综合网 | 在线日韩精品视频 | 丝袜少妇在线 | 久久久久电影 | 亚洲国产欧洲综合997久久, | 91亚洲视频在线观看 | 日韩电影中文字幕在线 | 亚洲国产合集 | 国产高清久久 | 欧美va天堂在线电影 | 夜夜躁日日躁狠狠久久av | 日韩国产精品毛片 | 偷拍福利视频一区二区三区 | 日韩免费在线观看视频 | 国产色拍拍拍拍在线精品 | 久久草在线免费 | 日本激情视频中文字幕 | 欧美一级裸体视频 | 欧美最猛性xxxxx亚洲精品 | 国产精品一区二区av日韩在线 | 91刺激视频 | 亚洲国产大片 | 美女国产网站 | 99国产精品免费网站 | 人人草网站 | 97超碰人人干 | 亚洲天天综合网 | 深爱激情av | 99精品免费在线 | 欧美日韩高清不卡 | 一级成人免费视频 | 不卡av在线免费观看 | 免费一级日韩欧美性大片 | 超碰在线观看av | 美女久久久 | 亚洲涩涩网站 | 色吊丝在线永久观看最新版本 | 日韩在线一级 | 欧美日韩国产在线一区 | 久久久久女人精品毛片九一 | 日韩三级在线 | 国产高清av免费在线观看 | 国产精品成人av电影 | 99在线国产 | 欧美人交a欧美精品 | 奇米先锋| 天天se天天cao天天干 | 久久无码av一区二区三区电影网 | 欧美污在线观看 | 日韩视频免费在线 | 色综合久久88色综合天天人守婷 | 国产男女爽爽爽免费视频 | 91视频com| 蜜臀av.com | 日韩三区在线观看 | 激情五月婷婷网 | www.夜色321.com| 婷婷丁香综合 | 欧美日韩天堂 | 激情视频91 | av在线8 | 伊人天堂网 | 一区免费观看 | 中文字幕在线看视频国产中文版 | 97av免费视频 | 在线免费观看视频你懂的 | 黄色福利网| 成人免费共享视频 | 日韩在线观看视频中文字幕 | 成人午夜精品 | 色狠狠狠 | 亚洲精品乱码久久久久久 | 97视频免费在线看 | 久久久久免费精品 | 天天综合网天天综合色 | 免费在线激情视频 | 欧美日韩另类在线观看 | 国产精品成人自产拍在线观看 | 亚洲精品av中文字幕在线在线 | 国产香蕉视频 | 亚洲国产精品一区二区久久hs | 国产精品一区二区三区电影 |