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

WebWork與Spring+Hibernate的整合

開發(fā) 后端
本文向您介紹WebWork與Sping和Hibernate的整合,包括Spring中初始化Action和Hiernate3中的API實(shí)現(xiàn)DAO等。

1、Webwork與Spring整合

(1)、開啟Spring的集成:

首先將***的spring的jar加到classpath中,然后在src目錄下建立webwork.properties文件,文件只包含下面的內(nèi)容webwork.objectFactory=spring
這種情況下,所有的對象都至少會試圖使用Spring來創(chuàng)建.如果它們不能被Spring創(chuàng)建,然后WebWork會自己創(chuàng)建對象.接下來,在web.xml打開Spring的Listener

  1. <listener>     
  2. <listener-class>   
  3. org.springframework.web.context.ContextLoaderListener   
  4. listener-class>     
  5. listener> 

 

由于使用標(biāo)準(zhǔn)的Listener來進(jìn)行WebWork與Spring整合,它可以被配置來支持除了applicationContext.xml之外的配置文件.把下面的幾行添加到web.xml會讓Spring的ApplicationContext從所有匹配給定的規(guī)則的文件中初始化:

  1. <!-- Context Configuration locations for Spring XML files -->     
  2. <context-param>     
  3. <param-name>contextConfigLocationparam-name>     
  4. <param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext          
  5. context-param> 

 

根據(jù)需要配置相應(yīng)的spring上下文。

(2)、在Spring中初始化Action

正常情況下,在xwork.xml里可以為每個(gè)action指定類.當(dāng)你使用SpringObjectFactory時(shí)WebWork會請求Spring來創(chuàng)建action并按照缺省指定的自動裝配行為來裝配依賴的組件.SpringObjectFactory 也會設(shè)置所有的bean的后置處理程序(post processors)來完成類似對Action進(jìn)行事務(wù),安全等等方面的代理的事情.Spring可以不依賴外在的配置來自動確定.對于大多數(shù)的使用,這就是全部需要的了,用來配置action,設(shè)置它們獲取服務(wù)和依賴組件.

強(qiáng)烈推薦使用一種聲明式的方法來讓Spring知道為action提供什么.這包括讓bean能夠自動裝配,無論是把Action里的依賴的屬性命名為和Spring應(yīng)該提供的Bean的名字一致(這允許基于名字的自動裝配),或者使用by type方式的自動裝配,也就是在注冊到Spring的Bean中需要的類型僅擁有一個(gè).也可以包括使用JDK5的標(biāo)準(zhǔn)來聲明事務(wù)和安全需求,而不是必須在你的Spring配置里明確設(shè)置代理.

如果能找到方法讓Spring在沒有任何明確的配置(在_applicationContext.xml_中)的情況下知道需要為action做什么,那么就不需要在兩個(gè)地方維護(hù)這個(gè)配置了.

當(dāng)然,有時(shí)候可能想要Spring完全來管理bean.這是有實(shí)際意義的,例如,如果想要為bean設(shè)置更復(fù)雜的AOP或者Spring相關(guān)的技術(shù),例如Acegi.為了達(dá)到這個(gè)目的,所有必須要做的事情就是在Spring的 applicationContext.xml 里配置bean,然后在 xwork.xml里改變你的WebWork action的類屬性來使用在Spring里面定義的bean的名字,而不再使用類名. 

xwork.xml文件也會改變action類的屬性,***留下的就像這樣 

  1. <xwork>     
  2. <!-- Include webwork defaults (from WebWork JAR). -->     
  3. <include file="webwork-default.xml" />     
  4. <!-- Configuration for the default package. -->     
  5. <package name="default" extends="webwork-default">     
  6. <action name="register" class="userAction" method="register">     
  7. <result name="success">/pages/registerSuccess.jspresult>     
  8. action>     
  9. package>     
  10. /xwork>  

 

在applicationContext.xml 里定義了一個(gè)名字為 "userAction"的Spring的bean.注意cn.com.nawang.Action.UserAction不需要改變,因?yàn)樗赡苁亲詣友b配的:

  1. <bean id="userAction" class="cn.com.nawang.action.UserAction" >        
  2. <property name="userService" ref="userService"/>     
  3. bean>  

 

注:bean中的id值必須與xwork.xml中對應(yīng)的class值一致。

2、基于Hibernate3的原生API實(shí)現(xiàn)DAO

Hibernate 3.0.1引入了一個(gè)新的特性:“帶上下文環(huán)境的Session”。 這一特性使得Hibernate自身具備了每個(gè)事務(wù)綁定當(dāng)前 Session 對象的功能。這與Spring中每個(gè)Hibernate的Session 與事務(wù)同步的功能大致相同。

(1)、 為Dao創(chuàng)建基類BaseDao

  1. public class BaseDao {      
  2. private SessionFactory  sessionFactory;      
  3. public void setSessionFactory(SessionFactory sessionFactory) {      
  4. this.sessionFactory = sessionFactory;      
  5. }      
  6. public Session getSession(){      
  7. Session session = this.sessionFactory.getCurrentSession();      
  8. return session;      
  9. }      
  10. }     

(2)、在子類Dao中實(shí)現(xiàn)具體持久化操作

  1. public class UserDao extends BaseDao implements IUserDao {      
  2. public void saveUser(User user) throws HibernateException {      
  3. getSession().save(user);      
  4. }            
  5. }      

(3)、在上下文中配置

 

  1. xml 代碼   
  2. "baseDao" class="cn.com.nawang.dao.BaseDao">     
  3. name="sessionFactory" ref="sessionFactory"/>     
  4. bean>  
  5. "userDao" class="cn.com.nawang.dao.impl.UserDao" parent="baseDao"/>    
  6. "userService" class="cn.com.nawang.service.impl.UserService">     
  7. name="userDao" ref="userDao"/>     
  8. bean>   
  9. "userAction" class="cn.com.nawang.action.UserAction" >        
  10. name="userService" ref="userService"/>     
  11. bean>  

 

重啟服務(wù),在web頁面上觸發(fā)register的action,執(zhí)行后,拋出下面的異常:

Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here
google了下,大概明白了是因?yàn)闆]有配置了事務(wù)導(dǎo)致的錯(cuò)誤。在配置事務(wù)之前,查看了以前的一個(gè)采用HibernateDaoSupport實(shí)現(xiàn)的項(xiàng)目,記得當(dāng)時(shí)并不需要配置事務(wù)就可以正常運(yùn)行。

于是,讓UserDao繼承于HibernateDaoSupport,修改后的代碼如下:

  1. public class UserDao extends BaseDao implements IUserDao {      
  2. public void saveUser(User user) throws HibernateException {      
  3. getHibernateTemplate().save(user);      
  4. }            
  5. }     
  6.  

保存修改內(nèi)容,重啟服務(wù),重啟中出現(xiàn)錯(cuò)誤,查看了spring in action中的相關(guān)配置,發(fā)現(xiàn)baseTransaction這個(gè)bean的配置稍有不同,
上面那個(gè)配置是參考springside的,當(dāng)時(shí)那個(gè)項(xiàng)目趕,就直接拿過來用,也沒出現(xiàn)問題,就不認(rèn)真去考慮,現(xiàn)在拷貝到現(xiàn)有項(xiàng)目中,卻出錯(cuò)了,于是先根據(jù)書上的介紹做相應(yīng)修改,改后的內(nèi)容如下:

  1. java 代碼   
  2. public class UserDao extends BaseDao implements IUserDao {      
  3. public void saveUser(User user) throws HibernateException {      
  4. getHibernateTemplate().save(user);      
  5. }            
  6. }     
  7.  

接下去,修改WebWork與Spring整合過程中的上下文相關(guān)配置,

  1. "userDao" class="cn.com.nawang.dao.impl.UserDao">     
  2. name="sessionFactory" ref="sessionFactory"/>     
  3. bean>  
  4. "userService" class="cn.com.nawang.service.impl.UserService">     
  5. name="userDao" ref="userDao"/>     
  6. bean>  
  7. "userAction" class="cn.com.nawang.action.UserAction" >        
  8. name="userService" ref="userService"/>     
  9. bean> 

保存修改后的,重啟服務(wù),再次觸發(fā)register的action,用戶信息成功保存。

去掉HibernateDaoSupport的dao實(shí)現(xiàn)后,又換回基于hibernate3.0原生API的實(shí)現(xiàn)方式,根據(jù)之前google后的結(jié)果,給userService配置
事務(wù),拷貝了下之前項(xiàng)目中的配置,并做相應(yīng)修改,修改后的內(nèi)容如下:

  1. <bean id="baseTransaction"       
  2. class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" 
  3.  abstract="true">     
  4. <property name="transactionManager" ref="transactionManager"/>     
  5. <property name="proxyTargetClass" value="true"/>     
  6. <property name="transactionAttributes">     
  7. <props>                       
  8. <prop key="get*">PROPAGATION_REQUIRED,readOnlyprop>     
  9. <prop key="find*">PROPAGATION_REQUIRED,readOnlyprop>     
  10. <prop key="load*">PROPAGATION_REQUIRED,readOnlyprop>                       
  11. <prop key="save*">PROPAGATION_REQUIREDprop>                       
  12. <prop key="add*">PROPAGATION_REQUIREDprop>                       
  13. <prop key="update*">PROPAGATION_REQUIREDprop>                       
  14. <prop key="delete*">PROPAGATION_REQUIREDprop>                   
  15. props>              
  16. property>         
  17. bean>       
  18. <bean id="transactionManager" class="org.springframework.orm.hibernate3  
  19. .HibernateTransactionManager">     
  20. <property name="sessionFactory" ref="sessionFactory"/>     
  21. bean>             
  22. <bean id="baseDao" class="cn.com.nawang.dao.BaseDao">     
  23. <property name="sessionFactory" ref="sessionFactory"/>     
  24. bean>     
  25. <bean id="userDao" class="cn.com.nawang.dao.impl.UserDao" parent="baseDao"/>     
  26. <bean id="userServiceTarget" class="cn.com.nawang.service.impl.UserService">     
  27. <property name="userDao" ref="userDao"/>     
  28. bean>     
  29. <bean id="userService" parent="baseTransaction">     
  30. <property name="target" ref="userServiceTarget"/>     
  31. bean>     
  32. <bean id="userAction" class="cn.com.nawang.action.UserAction" >        
  33. <property name="userService" ref="userService"/>     
  34. bean>   

保存修改內(nèi)容,重啟服務(wù),重啟中出現(xiàn)錯(cuò)誤,查看了spring in action中的相關(guān)配置,發(fā)現(xiàn)baseTransaction這個(gè)bean的配置稍有不同,
上面那個(gè)配置是參考springside的,當(dāng)時(shí)那個(gè)項(xiàng)目趕,就直接拿過來用,也沒出現(xiàn)問題,就不認(rèn)真去考慮,現(xiàn)在拷貝到現(xiàn)有項(xiàng)目中,卻出錯(cuò)了,于是先根據(jù)書上的介紹做相應(yīng)修改,改后的內(nèi)容如下:

  1. <bean id="baseTransaction"       
  2. class="org.springframework.transaction.interceptor.  
  3. TransactionProxyFactoryBean" lazy-init="true">     
  4. <property name="transactionManager" ref="transactionManager"/>     
  5. <property name="transactionAttributes">     
  6. <props>                       
  7. <prop key="get*">PROPAGATION_REQUIRED,readOnlyprop>     
  8. <prop key="find*">PROPAGATION_REQUIRED,readOnlyprop>     
  9. <prop key="load*">PROPAGATION_REQUIRED,readOnlyprop>                       
  10. <prop key="save*">PROPAGATION_REQUIREDprop>                                     
  11. <prop key="update*">PROPAGATION_REQUIREDprop>                       
  12. <prop key="delete*">PROPAGATION_REQUIREDprop>                   
  13. props>              
  14. property>         
  15. bean>     
  16. 去掉了  
  17. <property name="proxyTargetClass" value="true"/>  

 

的配置,將abstract="true"改為lazy-init="true",保存修改重啟服務(wù),并再次觸發(fā)register的action,一切如所愿,這樣就完成了WebWork與Sping和Hibernate的整合。

【編輯推薦】

  1. WebWork中返回INPUT的原因
  2. WebWork如何實(shí)現(xiàn)文件上傳配置過程
  3. WebWork下載的實(shí)現(xiàn)
  4. 通過WebWork實(shí)現(xiàn)HelloWorld
  5. WebWork的執(zhí)行流程
責(zé)任編輯:冰荷 來源: javaeye
相關(guān)推薦

2009-07-14 14:41:33

Webwork與Spr

2009-07-23 13:30:46

JDBC事務(wù)

2009-06-12 09:30:56

EJB3.0Spring+Hibe

2016-12-14 09:03:34

springhibernate異常

2009-07-14 16:55:32

MyEclipse S

2009-07-14 13:08:55

WebWork與Spr

2009-03-06 14:34:31

StrutsHibernateSpring

2009-09-23 17:56:45

JSF入門

2009-07-02 09:39:37

Hibernate延遲

2009-06-01 10:28:03

SpringOSGi整合

2009-07-09 16:22:12

WebWork配置

2009-07-16 14:58:03

WebWork安裝WebWork配置

2009-07-10 12:00:27

2009-06-01 16:28:15

SpringJPA集成

2009-06-25 17:13:51

jBPM與Spring

2009-06-19 15:28:03

SpringHibernate

2009-07-20 14:23:36

Struts與WebW

2009-07-08 09:55:51

WebWork下載

2009-07-08 10:30:57

WebWork

2011-05-19 09:52:48

SSH
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

在线播放 亚洲| 国产精品视频久久久久| 亚洲国产欧美视频| 国产精品成人国产| 亚洲激情图片一区| 精品在线观看一区二区| 欧美日韩 一区二区三区| 亚洲第一偷拍| 亚洲免费福利视频| 国产女同无遮挡互慰高潮91| 丁香花在线高清完整版视频| 久久蜜桃av一区精品变态类天堂| 91精品视频在线| 国产精品7777777| 91青青国产在线观看精品| 精品久久一二三区| 久热精品在线观看视频| 精品捆绑调教一区二区三区| 国产精品久久免费看| 国产欧美综合精品一区二区| 亚洲字幕av一区二区三区四区| 亚洲国产日韩在线| 久久精品中文字幕电影| 素人fc2av清纯18岁| 久久精品九色| 欧美日韩精品高清| 妞干网在线免费视频| 免费毛片在线看片免费丝瓜视频 | 午夜日韩视频| 亚洲视频在线播放| 日本xxxx裸体xxxx| 香蕉大人久久国产成人av| 欧美三级在线视频| 国产免费视频传媒| 国产亚洲成av人片在线观看| 亚洲精品欧美激情| 亚洲成人蜜桃| yjizz视频网站在线播放| 99r精品视频| 国产在线一区二区三区四区| 国产黄色片网站| 美女视频黄a大片欧美| 日本免费在线精品| 日日骚av一区二区| 美女精品网站| 日本精品久久久久久久| 日韩一区二区视频在线| 夜夜嗨一区二区| 国产+人+亚洲| 国产在线一区视频| 亚洲精品社区| 国模gogo一区二区大胆私拍| 国产网址在线观看| 亚洲日本黄色| 5252色成人免费视频| 日韩av在线播放观看| 黄色综合网站| 国语自产精品视频在线看一大j8 | 国内自拍视频一区二区三区| 欧美成人亚洲成人| 黄色一级视频免费观看| 国户精品久久久久久久久久久不卡| 久久精品国产一区二区电影| 中日韩一级黄色片| 欧美黄色精品| 久久久免费精品| 日本韩国欧美中文字幕| 天堂精品中文字幕在线| 国产精品视频成人| 国产精品怡红院| 国产99一区视频免费| 国产视色精品亚洲一区二区| 天堂91在线| 国产清纯美女被跳蛋高潮一区二区久久w| 欧美极品色图| 1pondo在线播放免费| 成人免费小视频| www.亚洲成人网| 欧美激情网站| 欧美亚洲国产怡红院影院| 亚洲美女爱爱视频| 91精品国产乱码久久久竹菊| 亚洲精品www久久久| 中文字幕国产专区| 午夜精品久久久久久久四虎美女版| 久久综合电影一区| 日本网站在线免费观看| 三级久久三级久久| 7777奇米亚洲综合久久| 亚洲AV第二区国产精品| 欧美国产日韩在线观看| 超碰97在线看| 成人欧美大片| 日韩一区二区三| 免费在线观看成年人视频| 欧美韩日高清| 68精品国产免费久久久久久婷婷 | 日韩三级在线免费观看| 在线 丝袜 欧美 日韩 制服| 97精品国产一区二区三区| 久久久免费精品| 亚洲中文字幕在线观看| 99久久伊人精品| 亚洲欧美丝袜| 中文一区一区三区高中清不卡免费| 精品视频一区二区不卡| 中文成人无字幕乱码精品区| 日韩一区二区在线免费| 97国产精品人人爽人人做| 91久久久久国产一区二区| av一区二区三区| 自拍偷拍一区二区三区| 午夜伦理福利在线| 日韩视频免费观看高清完整版| 日本二区在线观看| 亚洲看片免费| 91久久精品国产91久久性色tv| 国产色a在线| 天天做天天摸天天爽国产一区| 91看片破解版| 欧美色爱综合| 欧洲精品在线视频| 亚洲经典一区二区| 亚洲视频 欧洲视频| 国产福利一区视频| 午夜精品影视国产一区在线麻豆| 米奇精品一区二区三区在线观看| 精品国产青草久久久久96| 99免费精品视频| 欧美中文字幕在线观看视频| 成人乱码手机视频| 社区色欧美激情 | 国产精品男女视频| 91免费小视频| 欧美久久久久久久久久久久久| 国产欧美日韩电影| 久久精品国产91精品亚洲| 亚洲熟女乱色一区二区三区久久久| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美中文字幕在线观看视频| 亚洲性视频在线| 欧美精品在线免费播放| 国产人妻精品一区二区三区| |精品福利一区二区三区| 亚洲va综合va国产va中文| 成人嫩草影院| 欧美性受xxxx黑人猛交| 亚洲色大成网站www| 午夜精品福利一区二区蜜股av| 69亚洲乱人伦| 亚洲伦伦在线| 欧美日韩国产免费一区二区三区| 亚洲男人av| 亚洲天堂男人天堂| 欧美男人天堂网| 国产精品五月天| 日本超碰在线观看| 中文字幕一区二区av | 一区二区三区资源| 91精品人妻一区二区三区四区| 国产精品hd| 国产精选在线观看91| 日本不卡网站| 一区二区三区动漫| 国产一区二区小视频| 亚洲色欲色欲www| 亚洲精品乱码久久久久久9色| 亚洲午夜精品久久久久久app| 精品国产一二| 亚洲成人av观看| xxxxx成人.com| 亚洲欧美激情另类| 欧美小视频在线观看| 嘿嘿视频在线观看| 国产精品一级片| 国产一区二区网| 成人影院天天5g天天爽无毒影院| 91在线免费看网站| 免费毛片b在线观看| 一区二区三区四区在线观看视频| 国产精品久久婷婷| 亚洲成人tv网| 国产精品美女高潮无套| 国产精品一区二区无线| www.爱色av.com| 色无极亚洲影院| 国产女人水真多18毛片18精品 | 国产呦系列欧美呦日韩呦| 自拍偷拍亚洲视频| 久久久999国产精品| 日韩有码第一页| 欧美色大人视频| 国产一级性生活| 国产欧美日韩麻豆91| 精品1卡二卡三卡四卡老狼| 久久亚洲风情| 黄色a级片免费看| 精品99久久| 国产精品区免费视频| 69堂免费精品视频在线播放| 久久久久久国产免费| www 日韩| 日韩精品视频中文在线观看| 国产精品丝袜黑色高跟鞋| 欧美性xxxx在线播放| 中文字幕手机在线观看| 日本一区二区三区四区| 中文字幕在线永久| 国产精品一品二品| 欧美特级aaa| 欧美亚洲自偷自偷| 成人在线视频一区二区三区| 日韩黄色大片网站| 久久伊人一区| 都市激情亚洲欧美| 91日韩在线视频| se01亚洲视频| 91爱视频在线| 成年网站在线视频网站| 久久精品久久久久电影| 国产精品一区二区婷婷| 亚洲国产精品99久久| 国产三级精品在线观看| 欧美日韩综合色| 国产乱国产乱老熟| 亚洲.国产.中文慕字在线| 天天看片中文字幕| 中文字幕一区三区| 在线小视频你懂的| 91日韩精品一区| 国产伦精品一区二区三区88av| 国产一区二区三区免费观看| 亚州精品一二三区| 久久精品电影| 欧美日韩在线一| 99热这里只有成人精品国产| 国产911在线观看| 夜间精品视频| 国产a级片免费看| 99九九热只有国产精品| 日韩一区免费观看| 国产精品一区二区三区av麻| 欧美不卡1区2区3区| 亚洲国产国产| 你懂的网址一区二区三区| 欧美一区二区三区红桃小说| 国产一区免费观看| 日韩av不卡一区| 久久久久久久久久久久久久一区| 女仆av观看一区| 久99久在线| 亚洲区小说区| 日韩精品第一页| 欧美伦理在线视频| 在线看无码的免费网站| 天堂网在线观看国产精品| 中国成人亚色综合网站| 亚洲人metart人体| 黄色网在线视频| 日韩视频一区| 蜜臀久久99精品久久久酒店新书| 久久综合狠狠| www.国产视频.com| 国产美女娇喘av呻吟久久| 亚洲欧美日韩中文字幕在线观看| 国产 日韩 欧美大片| 亚洲中文字幕一区| 久久久久九九视频| 欧美美女性生活视频| 亚洲精品视频在线| 日韩伦理在线视频| 色婷婷综合五月| 91色在线播放| 亚洲成色777777女色窝| 青青青草原在线| 日韩综合视频在线观看| 亚洲区欧洲区| 日韩av高清不卡| 国产不卡精品| 精品在线视频一区二区| 日韩电影一区| 日本黄色片一级片| 老牛国产精品一区的观看方式| 久热精品在线观看视频| 成人免费视频播放| 欧美三级视频网站| 亚洲美女屁股眼交3| 成人免费视频毛片| 欧美猛男男办公室激情| 日韩一级免费视频| 这里只有精品在线播放| 日韩三级电影视频| 国产精品jizz在线观看麻豆| 日韩视频一区二区三区四区| 久久精品国产理论片免费| 天天色天天射综合网| 人妻夜夜添夜夜无码av| 麻豆91在线观看| 欧产日产国产精品98| 日韩一区欧美小说| 看片网址国产福利av中文字幕| 精品视频全国免费看| 日韩在线视频免费| 日韩在线www| 免费看男女www网站入口在线| 成人字幕网zmw| 国产精品嫩模av在线| 国产freexxxx性播放麻豆 | caopor在线| 国产精品乱人伦| 国产精品999在线观看| 日韩一级免费观看| av在线播放av| 欧美重口另类videos人妖| 秋霞一区二区| 一区二区三区四区免费视频| 欧美中文日韩| 日本久久久久久久久久| 亚洲精品欧美专区| 91av国产精品| 最近2019好看的中文字幕免费| 女厕盗摄一区二区三区| 999久久久| 在线中文字幕第一区| 性刺激的欧美三级视频| www成人在线观看| 欧美日韩中文视频| 日韩一区二区三区免费看| а√天堂资源地址在线下载| 国产精品久久久久久中文字| 少妇一区二区三区| 黄色www网站| 成人免费毛片aaaaa**| 欧美做爰爽爽爽爽爽爽| 在线不卡的av| 伦xxxx在线| 国产欧美精品在线播放| 色乱码一区二区三区网站| 嫩草av久久伊人妇女超级a| 91麻豆产精品久久久久久| 国产在线观看成人| 亚洲成人性视频| 182在线播放| 国产亚洲自拍偷拍| 午夜宅男久久久| 国产成人无码精品久久二区三| 欧美性猛交xxxx乱大交| 你懂的视频在线免费| 人九九综合九九宗合| 久久不见久久见免费视频7| 欧美精品第三页| 国产欧美一区二区三区在线看蜜臀| 日韩熟女一区二区| 一区二区三区美女xx视频| 欧美日韩免费观看视频| 亚洲va韩国va欧美va精四季| 喷白浆一区二区| 一区二区三区在线播放视频| 欧美日本在线看| 黄网站免费在线播放| 成人18视频| 亚洲神马久久| 一区二区三区久久久久| 欧美日韩国产高清一区二区三区| 欧洲日本在线| 97久久人人超碰caoprom欧美 | 69久久久久久| 1000精品久久久久久久久| 亚洲成人久久精品| 2019亚洲男人天堂| 精品国产一区二区三区久久久樱花 | 亚洲一区日韩| 成年人在线免费看片| 欧美精品日韩综合在线| 免费污视频在线| 欧洲一区二区在线| 久久国产三级精品| 欧美黄色免费观看| 亚洲欧美国产精品久久久久久久 | 欧美aaa级片| 日韩一区二区三区在线| 超碰在线cao| 亚洲欧美日韩在线综合| 成人午夜伦理影院| 性高潮视频在线观看| 久久福利视频网| 亚洲区小说区图片区qvod| 国内av一区二区| 婷婷国产v国产偷v亚洲高清| 福利片在线观看| 成人永久免费| 日本视频免费一区| 精品无码人妻一区二区三| 在线免费看av不卡| 成人av资源网址| 黄色在线视频网| 五月婷婷综合在线| 欧美极品另类| 欧美日韩一区二区三区在线观看免| 国模一区二区三区白浆|