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

JSF和Tapestry全面比較

開發 后端
本文先介紹JSF和Tapestry簡介,之后對JSF和Tapestry進行三大全面比較,如處理生命周期等。

目前應用很廣泛而且也很成熟的Struts應用開發框架,在未來幾年里將會逐漸淡出,其基于Action(action-based)的開發模型也將被活躍的java社區所推崇的新的開發模型所替代,對于java開源社區來說,追求***是很多人的理想。在2000年初誕生的Struts以及其他類似的 MVC(Model View Controler)框架主要都是以操作為中心,且都是無狀態的開發模型,而現在,基于組件(component-based)和事件驅動(event- driven)的開發模型逐漸流行起來,在很多時候都成了Struts的有利競爭者,這其中來自jcp的jsr127-JavaServer Faces(JSF)以及來自apache的Tapestry是其中的佼佼者。

在這篇文章中,我們將把這兩種框架JSF和Tapestry進行詳細的對比。我們的比較將涉及到兩種框架的設計、運行環境以及如何開發。比較的目的在于讓讀者了解這兩種框架各自的優缺點,以便于在自己的項目中,根據實際情況,選擇合適的框架。該文章的內容基于JSF1.1和Tapestry3.0.3 (在個別地方由于需要會談到Tapestry4.0)。

JSF和Tapestry簡介 

JSF源于JCP(Java Community Process)的JSR127規范。Sun公司自己同時也對該規范提供了一個實現,目前的版本是1.1,而且該項目的設計者之一正是Struts的作者 Craig McClanahan。另外一個JSF的實現,就是Apache的一個項目MyFaces。目前,幾個主流的java開發工具廠商都在其java ide中提供了對jsf的支持,比如Sun、Oracle、IBM、Borland等,而且JSF的后續版本JSF1.2也將成為J2EE5.0的一個組成部分。   

Tapestry最初于2000年在SourceForge注冊,來自于Apple WebObjects,隨后,于2003年成為Apache的一個項目。與JSF不同的是,Tapestry并不是某一個jsr規范的實現,它僅僅是一個開源項目,當前版本是3.0.3。4.0版本預計也將在后面的一段時間內推出。

JSF和Tapestry作為MVC框架,在一些基本特性上是非常類似的:
◆它們都讓開發者不再直接與Servlet API打交道,而是讓開發者在一個更高的抽象層上思考問題;
◆它們都將web頁面上的顯示元素綁定到一個java對象的某個屬性上,這些屬性可能是字符串、數字、日期或者其他類型,并且由該對象來維護其狀態。用戶在頁面上的交互行為(比如用鼠標點擊一個按鈕或者鏈接)都直接映射為java類中的一個事件處理方法;
◆兩種框架都支持組件式的開發方式,并且開發的組件可被其他開發者重用。兩種框架都自帶一個標準組件庫,提供web開發的常見通用功能。

在下面的章節里面,我們將會看見這兩個框架在各自的實現方式上是有很大區別的。對于大多數程序員來說,基于兩種框架做開發,將是非常不同的兩種體驗。

Sidebar: 例子程序在下面本文提供了一個例子程序,該程序的代碼大部分都將在這片文章中做出詳細的描述。這個程序主要就是一個管理個人假期的工具,它的主要功能包括:
◆一個home界面, 列出所有登記的假期,包括假期開始時間、天數以及一下描述信息;
◆一個detail界面,用于瀏覽某一登記假期的詳細信息;
◆一個new界面,用于添加一個假期信息。

下面這幅圖展示了該程序的主體流程和功能:

Sidebar程序  

對比1: 頁面開發(Page Development)

一個web應用實際上就是后端用java代碼獲取相應數據,并將數據傳遞給前端表現層代碼,然后最終返回給終端用戶。因此,在一個開發人員看來,當他初次接觸JSF和Tapestry時,最直接的感覺就是JSF的表現層是基于JSP的模板技術,而Ta pestry的表現層模板基本就可以看作是一個HTML。

JSF
JSF采用JSP的技術作為其表現層技術。與標準兼容的JSF實現必須實現一個核心組件的JSP標簽集。含有JSF標簽的html頁面不能在標準瀏覽器中預覽。要想瀏覽,必須使用JSF設計工具或者直接部署到應用中,在真實運行環境中瀏覽。

對于JSF技術來說,其表現層技術就是JSP,但是這不是唯一的解決方法。Hans Bergsten的文章介紹了可供選擇的其他的方法,讀者可閱讀該文章獲取詳細信息,Improving JSF by Dumping JSP 。 Bergsten的文章中指出了混合JSF和JSP標簽暴露出的一些問題。當然,這些問題在JSF1.2和JSP2.1中會得到解決。

Tapestry
對于大多數的Tapestry應用來說,Tapestry的表現層模板看起來就是一個簡單的規則的Html,只不過其中加入了一些Tapestry的屬性。

大家可以嘗試把代碼放入一個Html的body標簽當中,你會發現瀏覽器可以正常的觀看它。
上面的例子中,jwcid = "@componentName"屬性就是定義了一個Tapestry標簽。
Tapestry的模板不僅僅可以用HTML作為載體,它也支持其他的一些標記語言,Tapestry標簽是具有良好格式的標簽,即必須成對出現。 Tapestry模板技術支持的標記語言典型的就是HTML以及用于無線應用的WML。其***的一個特點 就是,可脫離Servlet容器,直接預覽。
事實上JSF標簽由于不是標準的html標簽,使得它對于初學者來說,是難于使用的。而對于很多java程序員來說,他們喜歡編輯HTML代碼,至少是樂意編寫html代碼。

JSF技術宣稱的一個技術優點就是,可使用同一個模板編寫運行在不同設備上的應用,由此帶來很大的靈活性。然而,這樣做,由于要協調不同設備間的表現差異性,那么很可能同一個模板,將不能正好表現你的輸出。同時,你不得不學習新的標簽庫的使用方法,并且搞懂它們是怎樣映射到html的。隨著時間的推移, JSF標簽的簡潔可幫助你很快的編寫表現層代碼,同時也降低了開發者對jsf設計工具的依賴。

本文認為,JSF的學習成本高于其技術優點。在大多數情況下,我們并不需要編寫適應于不同設備的應用。盡管JSF設計工具提供了簡單的圖形化的方法來構建和預覽JSF應用,但是在一個開發中,頁面設計人員更多的是喜歡用流行的HTML設計工具來編寫和預覽頁面,這就發生了一個沖突,即只有將更多的頁面工作轉移到java程序員身上,因為一個頁面設計人員通常情況下是不樂意去操作JSF設計工具的。

JSF開發者一直在尋找一種解決這些問題的方法。JSF技術設計良好的擴展體系,使得這成為可能,其中一個技術浮現出來,那就是表現層控制器。一個非常有前途的表現層控制器的實現就是Facelets ,由java.net創建的開放源代碼項目。Facelets的靈感就來源于Tapestry的模板模型,這使得JSF不再依賴于JSP技術。Facelets允許開發者創建Tapestry風格的標簽。

在未來的一段時間內,Facelets將會被開發者所采用,或許會影響JSF未來的版本。和JSF比較,Tapestry在表現層方面基于HTML代碼,可被標準瀏覽器所瀏覽,這正是它在表現層上的優勢所在。

比較2: java編程模型(Java Programming Model)

在前面我們提到Tapestry和JSF都允許表現層的模板直接和一個Java類中的屬性和方法進行交互,那這些類的實例在運行時是怎么創建和管理的呢?

Tapestry
Tapestry的一個完整過程通常都要包括三個部分:用于顯示的頁面模板(一般就是html),帶有相關屬性和方法的java類,用于定義頁面模板上的控制元素和java類的關系的頁面定義文件。Tapestry有著一套特殊的訪問HttpSess ion、ServletContext的體系。

在一個頁面定義文件中描述所有的數據綁定是可以的,但是一個頁面控制元素卻不能在request周期內,綁定一個java類。在request周期內只能通過一個page類訪問一些屬性和方法。這其中最主要的限制就是關于page類的問題,一個pag e類必須是BasePage或者AbstractPage的派生類。從另一方面來說,這就意味著你所編寫的表現層邏輯的代碼將會和框架本身的實現有著非常緊密的耦合。不過,Tapestry未來的版本就會減少這種耦合,努力成為一個松耦合的編程模型。

JSF
在JSF應用中沒有頁面定義文件。它只有一個全局的配置文件,命名為:faces-config.xml,里面通常都定義了一堆"managed beans"。這些managed beans都是帶有屬性和事件監聽器的定義良好的java bean。在faces-config.xml中定義的后端bean都有三個參數:一個標識符、一個java類名、一個bean的生存周期,生存周期可以是request、session、application中的一種。一旦在 faces-config.xml中定義好了一個managed bean,那一個前端頁面上的顯示控制元素就可以使用標識符來關聯這個bean。managed bean也可以配置為引用另外一個managed bean。

JSF和Tapestry都可以方便的與其他的中間層技術整合,比如Spring。JSF managed bean facility 是一個IoC(Inversion of Control)。通過諸如 JSF-Spring 這樣的擴展技術,我們可以方便將其和Spring很好的整合在一起,使得JSF的表達式可以調用Spring的bean的方法。雖然Spring可以與 Tapestry3.0整合,但是在Tapestry4.0當中才能更好的充分發揮IoC特性;Tape stry的領導Howard Lewis Ship已經在Tapestry啟動了IoC框架的工作。Spring的bean將會很輕松的注入到Tapestry應用的類中。

JSF的編程模型提供了更大的靈活型,因為你可以通過組合的方式來豐富你的代碼功能。比如,你可以設定一個指定的managed bean完成頁面的某些功能,同時,你也可以在這些bean里引用其他的managed bena,從而可在頁面間共享一些功能。
而Tapestry必須使用類繼承的方法,也就是說,Tapestry應用中的一個頁面類必須從框架指定的基類中派生(包含一大堆框架指定的狀態),這并不是一個理想的方法。

JSF能夠非常直觀的管理session和application周期內的狀態: 頁面代碼可以方便的訪問managed bean,而不管其生命周期是request、session還是application。而Tapestry在這方面就相對差點,不過, Tapestry4.0在這方面做了很大的改進,引入了類似于JSF managed bean的技術,同時,還支持Java 5.0的annotaions技術,減少對XML配置文件的依賴,從而降低應用配置的復雜性。

JSF在編程模型上來看,與Tapestry相比具有更大的靈活性。

對比3:請求處理生命周期(Request Processing Life Cycle)

請求處理生命周期在一個web應用中是很重要的,它反映了一個請求從提交到將信息返回給客戶端的處理過程。當然,請求處理生命周期必須能以某種優雅的方式,在正確的地方插入用戶定制的請求處理操縱邏輯。

JSF
JSF的請求處理生命周期清晰的定義成六個步驟:Restore View、Apply Request Values、 Process Validations、 Update Model Values、 Invoke Application 和 Render Response。從第二步Apply Request Values開始,可以直接跳到***一步Render Response,甚至可以直接返回給客戶端并且通知JSF運行時,響應操作已經完成了。有些方法要訪問JSF的FacesContext對象,比如狀態監聽器(phase listeners)、事件操縱器(event handlers)、轉換器(converters)、驗證器(validators)等,這都可能忽略請求處理生命周期中的某些步驟。

Tapestry
JSF有一個單一的生命周期模型,而Tapestry的生命周期依賴于其調用的引擎服務(engine service)。每一個引擎服務(engine service)都有其自己的生命周期。比如,Tapestry中的Direct Service控制標單的提交,而Page Service用于渲染頁面,并且不需要額外的服務端操作。每一個引擎服務(engine service)都被設計成在自身的生命周期內完成一些特定的任務。這就意味著,對于一個特定的需求,你可以創建一個對應的引擎服務(engine service),并且可自己定制生命周期。

JSF的生命周期概念更容易理解,而Tapestry可對一個特定的操作定義一個生命周期,這在某些問題的解決上,可能會提供更優雅的解決方案。

【編輯推薦】

  1. 了解JSF整體架構
  2. 詳細介紹JSF和MVC
  3. JSF通過URL來傳遞參數
  4. Facelets使用JSF組件
  5. BackingBean和JSF配置文件
責任編輯:佚名 來源: JavaEye
相關推薦

2009-06-22 14:22:41

JSF和Tapestr

2009-06-23 14:01:27

StrutsTapestryJSF

2009-06-23 16:29:51

JSFSpring MVCStruts 2

2009-07-03 14:46:42

JSP開發框架JSFTapestry

2009-06-23 15:51:00

JSF框架

2009-06-26 14:37:10

EJB和Spring

2009-07-15 16:39:51

AWT和Swing

2009-08-11 14:57:11

比較C#和Java

2009-07-14 14:16:03

Tapestry 5.Tapestry教程Tapestry頁面

2009-06-26 13:48:57

G4JSFGWTJSF

2009-06-24 13:50:29

JSF和MVC

2009-06-29 18:04:13

Tapestry5

2009-06-24 16:42:17

JSF和Facelet

2011-06-30 10:20:38

JSFMVC

2009-06-23 13:21:26

JSF和Spring

2009-06-24 17:43:24

Struts和JSF

2022-02-14 09:00:00

SQLNoSQL數據庫

2009-07-14 16:30:41

Swing與SWT

2009-06-22 15:35:31

JSF和Struts

2009-06-24 14:17:00

BackingBeanJSF配置文件
點贊
收藏

51CTO技術棧公眾號

欧美亚洲国产另类| 日韩欧美激情一区| 亚洲韩国在线| 精品国产乱码久久久久久蜜臀网站| 香蕉综合视频| 亚洲第一免费播放区| 情侣黄网站免费看| www免费视频观看在线| 成人综合激情网| 国产精品久久久久久久久粉嫩av| 日本精品人妻无码77777| 136导航精品福利| 91福利在线看| 欧美视频在线观看视频| 9色在线观看| 99久久精品免费精品国产| 国产精品视频网| 伊人久久综合视频| 91精品一区二区三区综合在线爱| 亚洲高清不卡av| 福利片一区二区三区| 美女搞黄视频在线观看| 亚洲人成人一区二区在线观看 | 国产www在线| 久久久久电影| 亚洲深夜福利网站| 91九色蝌蚪porny| 欧美久久久网站| 一本色道久久加勒比精品| 国产成人一二三区| a√在线中文网新版址在线| 99精品国产99久久久久久白柏| 国产深夜精品福利| 国产精品熟女视频| 国产精品日韩久久久| 欧美第一黄网免费网站| 黄色一级大片在线免费观看| 国产成人高清精品免费5388| 欧美丰满嫩嫩电影| 视色视频在线观看| 97欧美成人| 91久久精品网| 成人性做爰aaa片免费看不忠| 不卡专区在线| 精品国产999| 日韩国产欧美亚洲| av在线小说| 亚洲一区二区三区在线播放| 最新中文字幕久久| 日本中文字幕电影在线免费观看| 中文字幕精品三区| 日韩欧美一区二区三区久久婷婷| 深夜福利视频在线观看| av午夜一区麻豆| 国内精品视频在线播放| 欧美一级性视频| 成人精品视频一区二区三区| 97netav| 亚洲欧美强伦一区二区| 国产成a人亚洲| 国产精品对白一区二区三区| 精品国产无码一区二区| 国产精品伊人色| 亚洲综合国产精品| 丰满人妻一区二区三区免费| 国产精一区二区三区| 99久久综合狠狠综合久久止| 亚洲第一页在线观看| 成人午夜激情片| 九9re精品视频在线观看re6| 视频二区在线| 亚洲国产精品v| 这里只有精品66| av在线免费观看网址| 亚洲综合丁香婷婷六月香| 日本午夜激情视频| 国产日韩电影| 欧美三区免费完整视频在线观看| 手机av在线网| 超碰97久久国产精品牛牛| 日韩欧美一区二区视频| a天堂视频在线观看| 国产精品免费大片| 俺也去精品视频在线观看| 麻豆changesxxx国产| 国产精品分类| 国产成人精品日本亚洲| 国产又粗又猛视频免费| 国产精品影视天天线| 精品日韩欧美| 免费观看在线黄色网| 欧美一区二区三区电影在线观看| 亚洲欧美日韩久久久久久 | 欧美肥老太太性生活| 伦理中文字幕亚洲| 久久精品久久国产| 老牛国产精品一区的观看方式| 国产精品在线看| 欧美在线 | 亚洲| 国产视频一区在线观看| 一二三在线视频| 这里有精品可以观看| 欧美男同性恋视频网站| 少妇精品无码一区二区三区| 国产日产精品一区二区三区四区的观看方式| 丝袜美腿精品国产二区| 国产无遮挡裸体免费视频| 美洲天堂一区二卡三卡四卡视频| 99免费在线观看视频| 国产三级视频在线| 亚洲午夜电影网| 九色porny自拍| 西野翔中文久久精品国产| 久久精品中文字幕免费mv| 天天综合天天干| 国产一区二区在线观看视频| 欧美中文娱乐网| 都市激情国产精品| 欧美日韩情趣电影| 国产全是老熟女太爽了| 欧美日一区二区在线观看| 国产精品永久在线| 欧美日韩国产亚洲沙发| 亚洲成人综合视频| 中文字幕第22页| 欧洲杯什么时候开赛| 国内精品久久影院| 国产区精品在线| 国产午夜精品久久| 国产乱子夫妻xx黑人xyx真爽| 欧州一区二区三区| 不卡毛片在线看| 中文字幕人成人乱码亚洲电影| 97se亚洲国产综合自在线观| 一本色道久久88亚洲精品综合| 成人国产精品一区二区免费麻豆 | 黄色成人91| 亚洲一区亚洲二区亚洲三区| 91在线网址| 在线看日韩精品电影| 91精品人妻一区二区| 日韩午夜一区| 久久精品magnetxturnbtih| www.综合网.com| 精品黑人一区二区三区久久| 五月天av网站| 国产精品91一区二区| 国产欧美综合一区| 日韩在线观看中文字幕| 九九九热精品免费视频观看网站| 国产露脸国语对白在线| 亚洲视频资源在线| 1314成人网| 欧美福利视频| 国产99在线免费| 成人福利电影| 精品亚洲一区二区三区| 国产免费一级视频| 中文字幕第一区| 香蕉视频禁止18| 亚洲精品成人影院| 91久久精品一区二区别| 国产白丝在线观看| 国产视频在线一区二区| 懂色av蜜臀av粉嫩av分享吧最新章节| 欧美经典一区二区三区| а 天堂 在线| 怡红院精品视频在线观看极品| 好吊色欧美一区二区三区视频| 九色porny视频在线观看| 亚洲免费福利视频| 中国黄色一级视频| 一区二区三区四区精品在线视频| 精品国产乱码久久久久夜深人妻| 亚洲精品资源| 亚洲欧美成人一区| 国产精品18| 91成人免费观看网站| 国产精品四虎| 91麻豆精品国产| 日本亚洲欧美在线| 国产精品无遮挡| 黑人无套内谢中国美女| 国产亚洲精品bv在线观看| 亚洲韩国在线| 九九热hot精品视频在线播放 | 中文字幕精品无码一区二区| 亚洲国产成人一区二区三区| 无码人妻一区二区三区在线视频| 国产精品视区| 女女同性女同一区二区三区按摩| 懂色av一区二区| 国产精品露脸自拍| 国产精品—色呦呦| 中文字幕日韩在线播放| 日本美女一级片| 欧美日本乱大交xxxxx| 日本一本高清视频| 国产精品久久久久三级| 中文成人无字幕乱码精品区| 美女一区二区三区在线观看| 欧美精品久久久久久久自慰 | 一区二区三区www| 亚洲精品.www| 欧美日韩国产一区| av资源免费观看| 亚洲乱码国产乱码精品精可以看| 中文字幕国产综合| 成人免费视频免费观看| 欧美在线aaa| 亚洲一区二区免费看| 国产免费一区二区三区四在线播放| 四虎884aa成人精品最新| 91日本视频在线| 91精品影视| 91国产高清在线| 18网站在线观看| 中文字幕av一区| 免费资源在线观看| 亚洲国产免费av| 国产精品久久久久久免费| 一本一本久久a久久精品综合麻豆| 黄视频网站免费看| 中文一区二区在线观看| 北岛玲一区二区| 国产成人av影院| 天天干天天操天天玩| 亚洲欧美日韩国产一区| 免费看欧美黑人毛片| 欧美一区影院| 欧美少妇一级片| 91中文字幕精品永久在线| 视频在线99| 欧美综合另类| 日韩区国产区| 国产一区日韩| 奇米影视首页 狠狠色丁香婷婷久久综合| 国产精品视屏| 超碰97在线资源| 亚洲日本va| 亚洲综合在线小说| 日韩中文在线| 俄罗斯精品一区二区三区| 国内不卡的一区二区三区中文字幕| 国产精品专区h在线观看| 高清成人在线| 国产精品高潮粉嫩av| 日韩成人影音| 国产精品久久久999| 欧美日韩在线精品一区二区三区激情综合 | 欧美96一区二区免费视频| 不卡影院一区二区| 日韩精品视频网站| 亚洲最大综合网| 久久国产精品99久久久久久老狼 | 亚洲天堂av资源在线观看| 91久久在线视频| 一本色道69色精品综合久久| 99re在线观看视频| 精品三级av在线导航| 国产免费一区二区| 网曝91综合精品门事件在线| 美日韩免费视频| 成人看的羞羞网站| 国产三级中文字幕| 精品二区视频| 精品久久久久久久免费人妻| 日本va欧美va瓶| 日本一二三四区视频| 风间由美性色一区二区三区 | 亚洲猫色日本管| 日韩av在线天堂| 色94色欧美sute亚洲13| 天天射天天干天天| 在线播放中文字幕一区| a毛片在线免费观看| 亚洲国产成人在线视频| 黄视频在线观看免费| 久久精彩免费视频| heyzo高清国产精品| 日韩69视频在线观看| 未满十八勿进黄网站一区不卡| 亚洲一区亚洲二区| 偷拍自拍一区| 国产精品av免费| 9色精品在线| 狠狠操狠狠干视频| 成人av动漫在线| 日日操免费视频| 午夜影视日本亚洲欧洲精品| 日韩人妻精品中文字幕| 日韩欧美一级二级三级久久久| 外国精品视频在线观看| 最近的2019中文字幕免费一页| 日本不卡影院| 国产精品入口尤物| 国产精品sss在线观看av| 亚洲精品一区二区三| 一区三区视频| 久热精品在线播放| kk眼镜猥琐国模调教系列一区二区| 麻豆av免费观看| 一区二区在线看| 中文字幕永久在线| 亚洲成人黄色在线观看| 午夜不卡视频| 国产91久久婷婷一区二区| 这里视频有精品| 亚洲最新在线| 久久久999| 久久久老熟女一区二区三区91| 国产精品久久久99| 国产精品久久久久久人| 日韩欧美一级片| 日本电影在线观看网站| 日本欧美中文字幕| 久久aimee| 久久福利一区二区| 精品一区二区免费在线观看| 国产精品1000部啪视频| 亚洲成人综合视频| 亚洲精品国偷拍自产在线观看蜜桃| 最新亚洲国产精品| 电影久久久久久| 欧美人xxxxx| 国产美女精品| 在线观看国产网站| 亚洲国产精品久久久男人的天堂 | 日本视频免费在线| 精品免费日韩av| 在线你懂的视频| 91免费版网站入口| 性xxxx欧美老肥妇牲乱| 在线免费观看视频黄| 久久久www免费人成精品| www亚洲视频| 国产视频精品免费播放| 三级中文字幕在线观看| 精品视频一区二区| 日韩午夜免费视频| 搡老熟女老女人一区二区| 亚洲不卡在线观看| 天堂在线视频观看| 7777精品视频| 色综合www| 久久精品99国产| 久久久久青草大香线综合精品| 日本中文在线播放| 亚洲精品中文字幕女同| 奇米777日韩| 污视频在线免费观看一区二区三区| 久久夜色精品| 亚洲毛片亚洲毛片亚洲毛片| 欧美在线视频日韩| 成年女人的天堂在线| 国产精品久久久久久久午夜| 日韩系列欧美系列| 俄罗斯女人裸体性做爰| 亚洲一线二线三线视频| 欧美熟妇另类久久久久久不卡 | 日本中文字幕在线观看视频| 亚洲欧美一区二区三区在线| 亚洲成人va| 中国人体摄影一区二区三区| 国产自产视频一区二区三区| 欧美成人三级视频| 亚洲国产精品大全| 国产精品亚洲一区二区三区在线观看| 亚洲.欧美.日本.国产综合在线| 紧缚奴在线一区二区三区| 久操视频免费在线观看| 亚洲激情中文字幕| 香蕉成人影院| 日本成人在线不卡| 久久日一线二线三线suv| 中文字幕在线观看欧美| 欧美老女人性生活| 香蕉人人精品| 蜜桃福利午夜精品一区| 亚洲一二三区不卡| 美州a亚洲一视本频v色道| 国产日韩欧美成人| 日韩视频在线一区二区三区| 黄色av免费播放| 精品久久国产字幕高潮| 国产综合色区在线观看| 精品日韩在线播放| www久久精品| 99国产精品99| 国产第一区电影| 欧美区日韩区| 污污视频网站在线免费观看| 精品国免费一区二区三区| 小黄鸭精品aⅴ导航网站入口| 国产成人免费高清视频| 久久精品亚洲一区二区三区浴池| av中文字幕观看| 国产第一区电影| 亚洲精品乱码| 色哟哟一一国产精品|