精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Hibernate查詢語言HQL 八大要點

開發 后端
本文講述Hibernate查詢語言HQL。Hibernate擁有一種功能非常強大的查詢語言,這種語言被有意得與SQL非常相似,便于開發人員掌握。但不要被HQL的語法表面所迷惑,HQL完全是面向對象的,可以用來過程多態、繼承、關聯等關系。

Hibernate擁有一種功能非常強大的查詢語言,這種語言被有意得與SQL非常相似,便于開發人員掌握。但不要被HQL的語法表面所迷惑,HQL完全是面向對象的,可以用來過程多態、繼承、關聯等關系。

1大小寫敏感(Case Sensitivity)

HQL中的使用的Java的類名和屬性名是大小寫敏感的,其他的關鍵字都是大小寫不敏感的。所以“SeLeCT”等同與“sELEct”,也等同于“SELECT”,因為它不是Java類名,也不是Java類的屬性名。但Java類net.sf.hibernate.eg.FOO不等同于net.sf.hibernate.eg.Foo,同樣foo.barSet也不等同于foo.BARSET。

在本手冊中,HQL中的關鍵字均采用小寫,一些用戶可能發現HQL的關鍵字采用大寫更易讀,但我們也發現,當把這些HQL嵌入Java代碼中,看起來很丑陋。

2from從句(The from clause)

Hibernate中最簡單的from查詢可能是:

  1. from eg.Cat 

只是簡單的返回eg.Cat類的所有實例。

在很多時候你可能需要為類設置別名(alias),因為你可能需要在查詢的其他部分引用Cat。

  1. from eg.Cat as cat 

關鍵字as是可選的,我們也可以寫成:

  1. from eg.Cat cat 

可以出現多個類,然后返回一個“笛卡兒積”或交叉連接:

  1. from Formula as form, Parameter as param 

HQL中的別名用小寫字母是一個好習慣,符合Java本地變量的命名規范。

3關聯和連接(Associations and joins)

我們使用別名關聯實體、甚至用join來關聯值的集合的元素。

  1. from eg.Cat as cat  
  2.  
  3.     inner join cat.mate as mate  
  4.  
  5.     left outer join cat.kittens as kitten  
  6.  
  7. from eg.Cat as cat left join cat.mate.kittens as kittens  
  8.  
  9. from Formula form full join form.parameter param  

支持的連接類型借鑒自ANSI SQL:

· inner join

·  left outer join

·  right outer join

· full join (不常用)

inner join, left outer join和right outer join可以簡寫。

  1. from eg.Cat as cat  
  2.  
  3.     join cat.mate as mate  
  4.  
  5.     left join cat.kittens as kitten  

另外,一個“fetch”連接允許使用單連接來關聯或值的集合,使它們可以和父對象一起來初始化。這在使用Collection的情況下特別有用。

  1. from eg.Cat as cat  
  2.  
  3.     inner join fetch cat.mate  
  4.  
  5.     left join fetch cat.kittens  

fetch join通常不需要設置別名,因為被關聯的對象不應該被用在where從句中,也不能用在其他的任何從句中。

被關聯的對象不能直接在查詢結果中返回,他們可以通過父對象來訪問。

請注意:在目前的實現中,在查詢中只能返回一個集合。另外還要注意,fetch可能不用在被scroll()和iterator()調用的查詢中。***還要注意,full join fetch和right join fetch是沒有意義的。

4 select從句(The select clause)

select從句用來挑選在結果集中返回的對象和屬性:

  1. select cat.mate from eg.Cat cat 

上面這個查詢返回所有貓的配偶。

你也可以使用elements函數返回集合的元素。下面的查詢將返回任何貓(Cat)的所有小貓(Kitten)。

  1. select elements(cat.kittens) from eg.Cat cat 

查詢也可以返回任何值類型(包括Component類型的屬性)的屬性:

  1. select cat.name from eg.DomesticCat cat  
  2.  
  3. where cat.name like 'fri%' 
  4.  
  5. select cust.name.firstName from Customer as cust  

查詢可以返回多個對象,也可以返回作為Object[]類型的數組的屬性。

  1. select mother, offspr, mate.name 
  2.  
  3. from eg.DomesticCat as mother  
  4.  
  5.     inner join mother.mate as mate  
  6.  
  7.     left outer join mother.kittens as offspr  

或者作為一個實際的Java對象:

  1. select new Family(mother, mate, offspr)  
  2.  
  3. from eg.DomesticCat as mother  
  4.  
  5.     join mother.mate as mate  
  6.  
  7.     left join mother.kittens as offspr  

上面的這個查詢語句假設Family類有適當的構造函數。

5 聚集函數(Aggregate functions)

查詢可以使用屬性的聚集函數:

  1. select avg(cat.weight), sum(cat.weight), max(cat.weight), count(cat)  from eg.Cat cat 

select從句的聚集函數中可以出現集合:

select cat, count( elements(cat.kittens) )  from eg.Cat cat group by cat

支持的聚集函數有:

· avg(...), sum(...), min(...), max(...)

· count(*)

· count(...), count(distinct ...), count(all...)

distinct 和all關鍵字的意義與用法和SQL中相同:

  1. select distinct cat.name from eg.Cat cat  
  2.  
  3. select count(distinct cat.name), count(cat) from eg.Cat cat  

6 多態(polymorphism)

一個查詢:from eg.Cat as cat,它返回的不只是Cat,也有DomesticCat(家貓)這樣的子類。Hibernate可以在from從句中指定任何Java類和接口,查詢將返回繼承自該類和實現了該接口的所有的持久類的實例。下面的查詢將返回所有持久的對象:

  1. from java.lang.Object o 

指定的接口可以被多個不同的持久類實現:

  1. from eg.Named n, eg.Named m where n.name = m.name 

注意***2個查詢將需要超過1個SQL的select,這意味著不能夠按照從句指定的排列次序排列整個結果集。這也意味著你不能用Query.scroll()來調用這些查詢。

7 where從句(The where clause)

where從句是你可以按照自己指定的條件更精確的返回實例:

  1. from eg.Cat as cat where cat.name='Fritz' 

復合表達式使where從句功能非常強大:

  1. from eg.Cat as cat where cat.name='Fritz'  

這個查詢將被翻譯成帶有一個連接的SQL查詢語句。

如果你寫下這句查詢:

  1. from eg.Foo foo where foo.bar.baz.customer.address.city is not null 

這個查詢翻譯成SQL語句需要4個表連接。

“=”操作符不僅可以比較屬性,也可以比較實例:

  1. from eg.Cat cat, eg.Cat rival where cat.mate = rival.mate  
  2.  
  3. select cat, mate  from eg.Cat cat, eg.Cat mate  where cat.mate = mate  

一個叫id的特殊的屬性被用來引用一個對象的唯一標識符,你也可以用對象的屬性名。

  1. from eg.Cat as cat where cat.id = 123  
  2.  
  3. from eg.Cat as cat where cat.mate.id = 69    

這個查詢要比上一個有效率,因為不需要表連接。

可以使用復合主鍵的屬性。假設person有一個由medicareNumber和country構成的符合主鍵:

  1. from bank.Person person  
  2.  
  3. where person.id.country = 'AU' 
  4.  
  5. and person.id.medicareNumber = 123456  
  6.  
  7. from bank.Account account  
  8.  
  9. where account.owner.id.country = 'AU' 
  10.  
  11.     and account.owner.id.medicareNumber = 123456  

再重復一次,第二個查詢效率高些。

同樣,一個指定了屬性的類在多態持久(polymorphic persistence)的情況下訪問實體的discriminator value。

一個被嵌入到where從句中的Java類名將被翻譯成它的discriminator value。

from eg.Cat cat where cat.class = eg.DomesticCat

你也可以指定組件(component)的屬性和用戶自己定義的合成類型(及組件的組件等等)。

永遠也不要使用一個以組件的屬性結尾的路徑表達式。舉個例子,假設store.owner是一個帶有一個叫address組件的實體:

  1. store.owner.address.city    //正確  
  2.  
  3. store.owner.address        //錯誤!  

一個叫“any”的類型有2個特別的屬性,一個是id,另一個是class,它允許我們用下面的辦法進行連接(join)。AuditLog.item是一個用<  any>映射的屬性:

  1. from eg.AuditLog log, eg.Payment payment  
  2.  
  3. where log.item.class = 'eg.Payment' and log.item.id = payment.id  

需要注意的是:查詢中的log.item.class和payment.class將參考完全不同的數據庫列。

8 表達式(Expressions)

where從句中的表達式允許你使用SQL中的很多東西:

· 數學運算符: +, -, *, /

· 二元比較運算符: =, >=, <  =, <  >, !=, like

· 邏輯操作符: and, or, not

· 字符串連接符: ||

· SQL函數,如: upper() and lower()

· 圓括號: ( )

· in, between, is null

· JDBC輸入參數: ?

· 指定的參數::name, :start_date, :x1

· in和between:

  1. from eg.DomesticCat cat where cat.name between 'A' and 'B' 
  2.  
  3. from eg.DomesticCat cat where cat.name in ( 'Foo''Bar''Baz' )  

和否定形式的(negated forms):

  1. from eg.DomesticCat cat where cat.name not between 'A' and 'B' 
  2.  
  3. from eg.DomesticCat cat where cat.name not in ( 'Foo''Bar''Baz' )  

· is null和is not null

· 也可以使用特殊的屬性size或size()函數來測試集合的大小:

  1. from eg.Cat cat where cat.kittens.size > 0  
  2.  
  3. from eg.Cat cat where size(cat.kittens) > 0  

·  對于有索引的集合,你可以使用特殊屬性minIndex和maxIndex來引用最小索引和***索引。同樣,你也可以使用minElement和maxElement來引用基本類型的集合的minimum和maximum元素。

  1. from Calendar cal where cal.holidays.maxElement > current date 

也可以是函數的形式:

  1. from Order order where maxindex(order.items) > 100  
  2.  
  3. from Order order where minelement(order.items) > 10000  

在傳遞索引和元素給集合時(elements and indices函數)和傳遞子查詢的結果集時,SQL函數any, some, all, exists, in都是被支持的:

  1. select mother from eg.Cat as mother, eg.Cat as kit  
  2.  
  3. where kit in elements(foo.kittens)  
  4.  
  5. select p from eg.NameList list, eg.Person p  
  6.  
  7. where p.name = some elements(list.names)  
  8.  
  9. from eg.Cat cat where exists elements(cat.kittens)  
  10.  
  11. from eg.Player p where 3 > all elements(p.scores)  
  12.  
  13. from eg.Show show where 'fizard' in indices(show.acts)  

請注意:size, elements, indices, minIndex, maxIndex, minElement, maxElement在使用時有一些限制:

v      where從句中的in只用于數據庫的子查詢。

v      select從句中的in只用于elements 和indices函數。

v      帶有索引的元素的collection(arrays, lists, maps)只能在where從句中通過索引引用:

  1. from Order order where order.items[0].id = 1234  
  2.  
  3. select person from Person person, Calendar calendar  
  4.  
  5. where calendar.holidays['national day'] = person.birthDay  
  6.  
  7.     and person.nationality.calendar = calendar  
  8.  
  9. select item from Item item, Order order 
  10.  
  11. where order.items[ order.deliveredItemIndices[0] ] = item and order.id = 11  
  12.  
  13. select item from Item item, Order order 
  14.  
  15. where order.items[ maxindex(order.items) ] = item and order.id = 11  

表達式中的[]的內部可以是一個算術表達式:

  1. select item from Item item, Order order 
  2.  
  3. where order.items[ size(order.items) - 1 ] = item  

HQL為one-to-many關聯和值的集合提供了內置的index()函數:

  1. select item, index(item) from Order order 
  2.  
  3.     join order.items item  
  4.  
  5. where index(item) <  5  

被一些特定數據庫支持的SQL函數可以被使用:

  1. from eg.DomesticCat cat where upper(cat.namelike 'FRI%' 

如果你還不相信上面的一切,那么想想更長的和更短的可讀的查詢吧:

  1. select cust  
  2. from Product prod,  
  3.     Store store  
  4.     inner join store.customers cust  
  5. where prod.name = 'widget' 
  6.     and store.location.name in ( 'Melbourne''Sydney' )  
  7.     and prod = all elements(cust.currentOrder.lineItems) 

提示:something like

  1. SELECT cust.name, cust.address, cust.phone, cust.id, cust.current_order  
  2. FROM customers cust,  
  3.     stores store,  
  4.     locations loc,  
  5.     store_customers sc,  
  6.     product prod  
  7. WHERE prod.name = 'widget' 
  8.     AND store.loc_id = loc.id  
  9.     AND loc.name IN ( 'Melbourne''Sydney' )  
  10.     AND sc.store_id = store.id  
  11.     AND sc.cust_id = cust.id  
  12.     AND prod.id = ALL(  
  13.         SELECT item.prod_id  
  14.         FROM line_items item, orders o  
  15.         WHERE item.order_id = o.id  
  16. AND cust.current_order = o.id) 

【編輯推薦】

  1. 使用MyEclipse開發***個Hibernate程序
  2. Hibernate 中Clob字段的使用
  3. Hibernate自動生成標
  4. Hibernate的三個狀態(3)
  5. Hibernate的三個狀態(2)
責任編輯:book05 來源: 百度博客
相關推薦

2024-12-31 06:00:00

Python編程代碼

2025-06-19 02:00:00

云安全云計算CISO

2009-06-18 09:14:08

Hibernate H

2016-03-10 10:07:22

設計首頁開發

2011-05-26 16:04:17

java

2009-09-23 18:05:48

2011-07-11 17:56:04

java

2009-10-27 13:34:56

Oracle密碼管理

2016-03-17 10:29:03

NoSQL數據整合系統集成

2009-01-20 10:27:00

2016-10-28 16:53:03

數據庫

2009-09-25 16:57:49

Hibernate查詢

2016-03-22 10:35:05

移動·開發技術周刊

2017-08-15 15:18:43

混合云云服務商管理

2016-12-02 16:25:09

數據中心模塊化

2025-08-20 07:00:00

IT領導CIO職業挑戰

2024-02-27 07:12:12

編程語言TS

2009-06-22 14:07:46

JSF優勢

2011-08-17 13:55:25

VoIPPBX

2022-01-05 09:26:56

IT災難IT故障
點贊
收藏

51CTO技術棧公眾號

成人免费av电影| 亚洲人午夜射精精品日韩| av一区二区高清| 欧美性猛交xxxx富婆| 五月天久久狠狠| 国产乱码精品一区二三区蜜臂| 久久精品青草| 日韩av综合网| www.国产福利| 欧美aa在线观看| 国产精品传媒在线| 久久久久国产精品视频| 91精品中文字幕| 国产日韩欧美| 久久伊人精品视频| 自拍偷拍视频亚洲| 亚洲一区二区三区四区电影 | 日韩中文字幕高清| 成人婷婷网色偷偷亚洲男人的天堂| 91精品国产综合久久国产大片 | 欧美久久天堂| 亚洲婷婷国产精品电影人久久| 久久久久久久久一区| av高清一区二区| 日韩高清不卡一区二区三区| 欧美激情视频在线免费观看 欧美视频免费一 | 亚洲高潮无码久久| 国产毛片av在线| 成人激情午夜影院| 亚洲free性xxxx护士白浆| 在线视频精品免费| 亚久久调教视频| 韩国美女主播一区| 538任你躁在线精品视频网站| 国产一区二区三区探花| 亚洲精品久久久久久久久久久久久 | 成人精品高清在线视频| 狠狠躁天天躁日日躁欧美| 日本高清视频免费在线观看| 午夜伦理在线| 国产片一区二区| 裸模一区二区三区免费| 日本久久一级片| 国产91丝袜在线播放| 成人黄色生活片| 一区二区三区精彩视频| 欧美aaaaa成人免费观看视频| 8x拔播拔播x8国产精品| 欧美人妻精品一区二区免费看| 99精品小视频| 色噜噜狠狠狠综合曰曰曰| 极品尤物一区二区| 欧美日韩国产一区二区三区不卡 | 国产黄片一区二区三区| 亚洲色图丝袜| 亚洲色图第一页| 美女爆乳18禁www久久久久久| 窝窝社区一区二区| 亚洲欧美成人一区二区在线电影| 亚洲国产果冻传媒av在线观看| 7777精品| 亚洲第一中文字幕| 久久人人爽人人爽人人片 | 国产99久久久精品| 国产精品裸体一区二区三区| 高h震动喷水双性1v1| 成人精品一区二区三区中文字幕| 国产精品午夜av在线| 日本韩国免费观看| 国产亚洲成av人在线观看导航| 欧美日韩亚洲一区二区三区在线观看 | 久久精品视频5| 日韩专区欧美专区| 国产在线视频2019最新视频| 99热这里只有精品99| 国产成人在线视频网站| 狠狠色狠狠色综合人人| 青梅竹马是消防员在线| 国产精品麻豆网站| 五月天激情图片| 川上优av中文字幕一区二区| 日本道色综合久久| 在线观看免费不卡av| 一区二区在线免费播放| 日韩激情在线视频| 青青草华人在线视频| 欧美日韩精品免费观看视频完整| 97国产在线视频| 香蕉污视频在线观看| 精品在线免费视频| 黄色91av| 日本成人在线播放| 亚洲福利视频一区二区| 妞干网在线免费视频| 久久亚洲人体| 亚洲精品一线二线三线| 国产全是老熟女太爽了| 亚洲区综合中文字幕日日| 久久久久久久久久久久久久久久久久av | 不卡一卡2卡3卡4卡精品在| 欧美新色视频| 亚洲精品视频一区| 精品免费国产一区二区| 精品一区二区三区中文字幕| 亚洲欧美日韩精品| 青青草激情视频| 可以免费看不卡的av网站| 7777奇米亚洲综合久久| 电影av在线| 亚洲二区在线视频| 亚洲精品永久视频| 国产精品午夜一区二区三区| 欧美国产欧美亚洲国产日韩mv天天看完整| 黄色av一级片| 成人h动漫精品| 一级黄色录像免费看| 成人午夜精品| 亚洲成人精品在线| 性欧美videos| 蜜臂av日日欢夜夜爽一区| 鲁丝一区二区三区免费| 免费电影视频在线看 | 欧美亚洲精品在线观看| 亚洲欧美国产三级| 国产又黄又猛的视频| 欧美精品一区二区三区中文字幕| 国内精品视频一区| www.精品视频| 亚洲欧洲中文日韩久久av乱码| 欧美日韩亚洲一二三| 日韩伦理一区二区三区| 欧美极品美女电影一区| jizz中国女人| 亚洲天堂2014| 伊人影院综合在线| 欧美一区二区三区高清视频| **欧美日韩vr在线| 少妇喷水在线观看| 亚洲国产日韩av| 亚洲熟女乱综合一区二区| 亚洲无中文字幕| 成人xvideos免费视频| 欧美性天天影视| 欧美日韩www| 影音先锋男人资源在线观看| 久久国产婷婷国产香蕉| 亚洲精品9999| 偷拍自拍亚洲| 欧美成aaa人片在线观看蜜臀| 国产精品一区二区人人爽| 亚洲欧洲国产专区| 亚洲自拍第三页| 一区二区影院| 国产精华一区二区三区| av老司机免费在线| 日韩精品福利网站| 台湾佬中文在线| 国产欧美一区二区在线| 欧美精品性生活| 国产精品7m凸凹视频分类| 91九色国产视频| 牛牛电影国产一区二区| 欧美成人bangbros| 精品成人久久久| 久久久久九九视频| 五月激情婷婷在线| 中文字幕免费精品| 国产精品一区二区三区不卡| 一本大道色婷婷在线| 国产一区二区三区在线播放免费观看| 销魂美女一区二区| 亚洲欧洲国产日韩| 欧美熟妇精品一区二区蜜桃视频| 亚洲久色影视| 日韩电影在线播放| 高清一区二区三区av| 久久免费视频观看| 国产毛片av在线| 日韩视频免费观看高清完整版| 国产无遮挡又黄又爽在线观看| 久久这里只有精品首页| 国产成人黄色网址| 国产在线欧美| 欧美午夜精品久久久久免费视| 国产精品久久久久久久久免费高清| 久久久精品一区| 午夜av免费在线观看| 欧美色成人综合| 免费麻豆国产一区二区三区四区| 26uuuu精品一区二区| 手机免费av片| 亚洲精品一级| 小说区视频区图片区| 极品束缚调教一区二区网站| 国产精品三级美女白浆呻吟 | 成人在线观看一区二区| 丝袜诱惑亚洲看片| 狠狠精品干练久久久无码中文字幕| 欧美jizz19性欧美| 成人国产精品日本在线| а_天堂中文在线| 综合国产在线视频| 亚洲aⅴ乱码精品成人区| 欧美日韩国产一级二级| 精品美女久久久久| 亚洲精品成人天堂一二三| 88久久精品无码一区二区毛片| 国产精品一区二区三区网站| 999精品网站| 亚洲作爱视频| 99re8这里只有精品| 国产精品一区二区三区av麻| www久久99| 999色成人| 国产精品久久久久99| 欧美aaaaa性bbbbb小妇| 欧美黑人狂野猛交老妇| 久久亚洲天堂| 国产一区二区激情| 亚洲av毛片成人精品| 日韩三级电影网址| 91好色先生tv| 欧美丝袜丝交足nylons图片| 偷偷操不一样的久久| 一区二区视频在线| 婷婷伊人五月天| 国产婷婷色一区二区三区四区| 国产精品九九视频| 国产凹凸在线观看一区二区| 日韩欧美国产片| 日本美女视频一区二区| 成人小视频在线看| 免费在线亚洲欧美| av黄色在线网站| 99国产精品久久久久久久| 久久亚洲a v| 欧美三级特黄| 日本黄色片一级片| 欧美午夜在线| 欧美日韩不卡在线视频| 亚洲国产不卡| 三级在线免费观看| 欧美日韩国产综合网| 777久久精品一区二区三区无码| 999精品视频| 男人天堂成人网| 综合精品一区| 男人天堂a在线| 亚洲国产精品第一区二区| 国产一区二区三区小说| 亚洲午夜精品久久久久久app| www.日本三级| 日韩天天综合| 91av俱乐部| 美女性感视频久久| 亚洲一区精品视频在线观看| 国产一区在线不卡| 亚洲黄色小说在线观看| 成人黄色大片在线观看| 三级黄色片网站| 国产夜色精品一区二区av| 国产精品无码无卡无需播放器| 国产精品欧美精品| 欧美成人免费看| 天天做天天摸天天爽国产一区| 国产99久久久| 欧美日韩一区二区在线视频| 亚洲无码久久久久| 日韩视频一区二区| 婷婷五月综合久久中文字幕| 亚洲欧美国产精品va在线观看| av网页在线| 欧美乱妇高清无乱码| h片在线观看下载| 国产成人小视频在线观看| 欧美大陆国产| 国产精品视频入口| 国产中文字幕一区二区三区| 欧美aaa在线观看| 亚洲美女色禁图| 乌克兰美女av| 成人一区二区三区中文字幕| 国产精品无码一区二区三区免费| 亚洲国产精品成人综合| 2021亚洲天堂| 在线视频你懂得一区二区三区| 国产欧美一级片| 精品在线欧美视频| 先锋成人av| 国产精品久久久久久婷婷天堂| 视频一区视频二区欧美| 日韩av电影在线观看| 欧美国产先锋| 久久久久久香蕉| 不卡的av在线播放| 婷婷综合在线视频| 欧美日韩国产黄| 国产免费叼嘿网站免费| 亚洲人成在线观看| 男女在线观看视频| 国产精品三级久久久久久电影| 国产成人在线中文字幕| 亚洲欧美国产不卡| 夜夜夜久久久| 少妇性l交大片7724com| 亚洲国产精品黑人久久久| 在线观看 中文字幕| 在线不卡中文字幕| 国产一级片在线| 91精品国产91久久久| 2020国产精品小视频| 日韩免费av一区二区三区| 亚洲午夜久久久久久尤物| 日本一二三四区视频| 亚洲国产激情av| 国产精品一区无码| 亚洲白虎美女被爆操| 黄色av免费在线| 国产欧美中文字幕| 九九视频精品全部免费播放| 日韩精品在线观看av| 国产一区视频在线看| 五月婷婷婷婷婷| 在线观看av一区二区| 日本韩国精品一区二区| 国内揄拍国内精品| 亚洲国产一区二区三区网站| 男女激烈动态图| 国产中文字幕一区| 国产无遮挡在线观看| 在线免费一区三区| 精品电影在线| 欧美中文字幕在线| 群体交乱之放荡娇妻一区二区| 国产女教师bbwbbwbbw| 国产毛片精品一区| 538精品在线视频| 91精品黄色片免费大全| 麻豆传媒在线免费| 国产欧美日韩免费看aⅴ视频| 精品日本12videosex| 婷婷丁香激情网| 亚洲国产精品成人综合| 一级片免费观看视频| 久久九九国产精品怡红院 | 国产高清视频色在线www| 国产精品一区二区不卡视频| 亚洲激情在线| 国产传媒第一页| 色美美综合视频| 超碰免费97在线观看| 成人亲热视频网站| 亚洲理论电影网| 亚洲国产精品第一页| 欧美日韩国产一区在线| 色天堂在线视频| 国产精品久久婷婷六月丁香| 日韩久久精品网| 初高中福利视频网站| 五月婷婷另类国产| 日本不卡视频一区二区| 国产精品久久久久一区二区| 97精品一区| 欧美xxxxx精品| 色婷婷久久久亚洲一区二区三区| 高清在线观看av| 亚洲va欧美va国产综合久久| 国产一区二区中文| 熟妇高潮精品一区二区三区| 色av一区二区| 国产一二三区在线观看| 国产偷久久久精品专区| 麻豆精品网站| 成人自拍小视频| 亚洲精品91美女久久久久久久| 日日夜夜天天综合| 无码毛片aaa在线| 99精品1区2区| 亚洲一级在线播放| 羞羞色国产精品| 日韩成人激情| 欧亚乱熟女一区二区在线| 在线视频国内自拍亚洲视频| 成人在线视频亚洲| 欧美日韩高清免费| 国产乱码字幕精品高清av| 亚洲精品午夜国产va久久成人| 中文字幕久热精品视频在线| eeuss鲁片一区二区三区| 无码内射中文字幕岛国片| 亚洲精品中文字幕在线观看| 青青草在线免费视频| 亚洲a中文字幕| 日产国产欧美视频一区精品| 欧美精品一区二区蜜桃| 一区二区三区在线播放欧美| 日韩精品亚洲专区在线观看| 91av俱乐部| 姬川优奈aav一区二区| 成人黄色网址|