亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

使用 JSF 開(kāi)發(fā)基于 Ajax 的用戶界面:ADF Faces

系統(tǒng) 1967 0

在本教程中,您將學(xué)習(xí)如何使用 Oracle ADF Faces 富客戶端 (RC) 創(chuàng)建 JSF 頁(yè)面。Oracle ADF Faces 富客戶端是一組包括內(nèi)置 Ajax 功能的標(biāo)準(zhǔn) JSF 組件。盡管 Ajax 允許類似于富客戶端的應(yīng)用程序在標(biāo)準(zhǔn)的互聯(lián)網(wǎng)技術(shù)上運(yùn)行,但 JSF 提供了服務(wù)器端控件,可以減少典型 Ajax 應(yīng)用程序?qū)Υ罅?JavaScript 的依賴性。

60 分鐘

主題

本教程包括下列主題:

打開(kāi)啟動(dòng)應(yīng)用程序

創(chuàng)建頁(yè)面流

使用布局組件設(shè)計(jì)頁(yè)面
ADF 表組件和 ADF 綁定
測(cè)試主頁(yè)面
使用 Image 和 Gauge 組件
使用菜單
使用輸入組件
實(shí)現(xiàn)部分頁(yè)面呈現(xiàn)
向主頁(yè)面添加彈出功能
向主頁(yè)面添加拖放功能
使用皮膚更改應(yīng)用程序的外觀

將鼠標(biāo)置于此圖標(biāo)上以加載和查看本教程的所有屏幕截圖。(警告:因?yàn)榇瞬僮鲿?huì)同時(shí)加載所有屏幕截圖,所以網(wǎng)速較慢時(shí),響應(yīng)時(shí)間可能會(huì)比較長(zhǎng)。)

注: 此外,您還可以在下列步驟中將鼠標(biāo)放在每個(gè)單獨(dú)的圖標(biāo)上,從而僅加載和查看與該步驟相關(guān)的屏幕截圖。可以通過(guò)單擊各個(gè)屏幕截圖來(lái)將其隱藏。

概述

本教程將介紹如何創(chuàng)建 ADF 富客戶端 JSF 頁(yè)面,并介紹一些易于實(shí)現(xiàn)的功能(如拖放、彈出和圖像)。

返回主題列表

從一個(gè)現(xiàn)有的應(yīng)用程序開(kāi)始,創(chuàng)建一個(gè)具有兩個(gè)頁(yè)面的頁(yè)面流圖。

主頁(yè)面一側(cè)包含購(gòu)物車的內(nèi)容,另一側(cè)顯示可選的商品。您實(shí)現(xiàn)拖放功能,通過(guò)移動(dòng)購(gòu)物車區(qū)域中的所選商品將其放入購(gòu)物車中。您還可以創(chuàng)建選項(xiàng)卡和折疊面板 (Accordion),并添加一個(gè)彈出窗口。

Edit 頁(yè)面顯示商品詳細(xì)信息并允許您更新所選商品的特性。

返回主題列表

前提條件

開(kāi)始本教程之前,您應(yīng)該:

1.

可以訪問(wèn)或已安裝了 Oracle JDeveloper 11 g 。可以從 Oracle 技術(shù)網(wǎng) 下載它。有關(guān)安裝和啟動(dòng) JDeveloper 的更多詳細(xì)信息(例如,系統(tǒng)需求、在其他操作系統(tǒng)上安裝、配置 JDeveloper 存儲(chǔ)項(xiàng)目和用戶設(shè)置的位置,等等),請(qǐng)參見(jiàn) JDeveloper 安裝指南

2.

下載啟動(dòng)應(yīng)用程序。右鍵單擊以下 鏈接 并從上下文菜單中選擇 Save Target As.. ,將 Tutorial.zip 文件下載到您選擇的本地目錄。

3.

Tutorial.zip 文件解壓縮到您選擇的本地目錄。

4.

啟動(dòng) JDeveloper。雙擊 JDeveloper 可執(zhí)行文件 jdeveloper.exe ,該文件位于您解壓縮它的根目錄( &ltjdev 主目錄> )中。

如果 Migrate User Settings 對(duì)話框打開(kāi),請(qǐng)單擊 NO

如果系統(tǒng)提示您選擇一個(gè)用戶角色,則選擇 Default

關(guān)閉 Tip of the Day 窗口。

5.

現(xiàn)在應(yīng)顯示 JDeveloper IDE。

返回主題列表

打開(kāi)啟動(dòng)應(yīng)用程序

在創(chuàng)建任何組件之前,您必須先打開(kāi)啟動(dòng)應(yīng)用程序。為此,執(zhí)行以下步驟:

1.

在 Application Navigator 中,單擊 Open Application

2.

Select Application to add 對(duì)話框中,找到您解壓縮 Tutorial.zip 文件的目錄并選擇 Tutorial.jws

單擊 Open 。如果系統(tǒng)提示一條移植警告消息,請(qǐng)接受移植。

3.

該應(yīng)用程序加載到 Application Navigator 中。

4.

展開(kāi) adffacesrc 節(jié)點(diǎn)。Application Navigator 應(yīng)如下所示:

返回主題列表

創(chuàng)建頁(yè)面流

您將使用 JDeveloper 的 JSF 導(dǎo)航建模器以圖表方式設(shè)計(jì)和創(chuàng)建應(yīng)用程序的頁(yè)面以及頁(yè)面之間的導(dǎo)航。

1.

在 Application Navigator 中,展開(kāi) Web Content | WEB-INF 節(jié)點(diǎn),然后雙擊 faces-config.xml 文件打開(kāi)頁(yè)面流圖。

2.

空的圖表打開(kāi)。注意 Diagram 編輯器右邊的 Component Palette。您將使用它為 JSF 導(dǎo)航模型創(chuàng)建組件。

3.

在 Component Palette 的 JSF Navigation Diagram 頁(yè)面中,選擇 JSF Page ,單擊希望頁(yè)面在圖表上顯示的位置。

將頁(yè)面重命名為 main.jspx


4.

在 Component Palette 的 JSF Navigation Diagram 頁(yè)面中,選擇 JSF Page ,單擊上一頁(yè)面的旁邊。

將該頁(yè)面重命名為 edit.jspx

5.

在 Component Palette 中選擇 JSF Navigation Case 。單擊源 JSF 頁(yè)面 ( main ) 的圖標(biāo),然后單擊該導(dǎo)航示例的目標(biāo) JSF 頁(yè)面 ( edit ) 的圖標(biāo)。

6.

修改默認(rèn)標(biāo)簽“success”,方法是單擊它,然后在其上鍵入 edit

7.

在 Component Palette 中選擇 JSF Navigation Case。單擊源 JSF 頁(yè)面 ( edit ) 的圖標(biāo),然后單擊該導(dǎo)航示例的目標(biāo) JSF 頁(yè)面 ( main ) 的圖標(biāo)。


8.

修改默認(rèn)標(biāo)簽“success”,方法是單擊它,然后在其上鍵入 save

9.

您的圖表現(xiàn)在應(yīng)如下圖所示。

10.

單擊 JDeveloper 菜單欄上的 Save All 圖標(biāo),或從菜單中選擇 File > Save All 以保存圖表。

返回主題列表

使用布局組件設(shè)計(jì)頁(yè)面

要?jiǎng)?chuàng)建主頁(yè)面和數(shù)據(jù)控件,執(zhí)行以下步驟:

1.

預(yù)置的應(yīng)用程序的頁(yè)面流圖中已經(jīng)定義了 2 個(gè)頁(yè)面和 2 個(gè)導(dǎo)航示例。然而,這兩個(gè)頁(yè)面目前尚不是 JSF 頁(yè)面。

2.

雙擊 main.jspx 圖標(biāo)創(chuàng)建頁(yè)面,然后在編輯器中打開(kāi)它。

3.

在 Create JSF Page 對(duì)話框中,保留文件名為默認(rèn)值 main.jspx 并選中 Create as XML Document (*.jspx) 復(fù)選框。從 Use Page Template 域的下拉列表中選擇 simple

單擊 OK

4.

main.jspx 顯示為 Application Navigator 的一個(gè)新節(jié)點(diǎn),它在加載了 simple.jspx 模板的 Design 編輯器中打開(kāi)。

5.

在 Component Palette 中,使用 ADF Faces | Layout 庫(kù)將 Panel Splitter 組件拖放到 center facet 上。

6.

在 Property Inspector 中,選擇 Style 選項(xiàng)卡并在 StyleClass 域中鍵入 AFVisualRoot

7.

將一個(gè) Panel Tabbed 組件拖放到該頁(yè)面的“ second ”facet 上。

8.

將一個(gè) Panel Accordion 組件拖放到該頁(yè)面的“ first ”facet 上。

9.

在您剛創(chuàng)建的折疊面板內(nèi)單擊,然后右鍵單擊并從上下文菜單中選擇 Insert after Show Detail Item --> Show Detail Item

在 Property Inspector 中,將 Common 選項(xiàng)卡的 Text 域更改為 More

10.

在 Structure 窗格中,選擇第一個(gè) af:showDetailItem 組件,將 Text 域設(shè)置為 Shopping Carts

11.

右鍵單擊該頁(yè)面的“ second ”面板,選擇 Insert inside Panel Tabbed --> Show Detail Item

在 Property Inspector 中,將 Common 選項(xiàng)卡的 Text 域更改為 Products

12.

在該頁(yè)面,右鍵單擊您剛創(chuàng)建的新的 Products 詳細(xì)信息項(xiàng),然后從上下文菜單中選擇 Insert after Show Detail Item - Products --> Show Detail Item

在 Property Inspector 中,將 Common 選項(xiàng)卡的 Text 域更改為 Specials

13.

單擊 second 面板中的 Products 選項(xiàng)卡,然后將一個(gè) Panel Collection 組件從 ADF Faces | Layout 庫(kù)拖放到 second 面板上。

頁(yè)面設(shè)計(jì)現(xiàn)在應(yīng)如下所示:

返回主題列表

ADF 表組件和 ADF 綁定

要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)控件并將其綁定到 ADF 表組件,執(zhí)行以下步驟:

1.

我們現(xiàn)在使用 ADF 數(shù)據(jù)綁定工具從現(xiàn)有的 POJO 類創(chuàng)建數(shù)據(jù)控件。

在 Application Navigator 中,右鍵單擊 Application Sources | tutorial.model 路徑下的 StoreProducts.java ,然后從上下文菜單中選擇 Create Data Control

Application Navigator 應(yīng)如下所示:

2.

打開(kāi) Data Controls 折疊面板。

Data Controls 窗格應(yīng)如下所示:

3.

StoreProducts | products 數(shù)據(jù)庫(kù)控件拖放到 Products 面板上。

從彈出菜單中選擇 Tables --> ADF Read-only Table...

4.

在 Edit Table Columns 對(duì)話框中,選擇 Row Selection Sorting 選項(xiàng)。

單擊 OK

5.

在 Structure 窗格中選擇了該表之后,使用 Property Inspector 選擇 Behavior 選項(xiàng)卡,并通過(guò)下拉列表將 Column Selection 域設(shè)置為 multiple

6.

單擊 JDeveloper 菜單欄上的 Save All 圖標(biāo),或者從菜單中選擇 File | Save All

7.

在該頁(yè)面中單擊右鍵并從上下文菜單中選擇 Run ,以在您的默認(rèn) Web 瀏覽器中運(yùn)行該頁(yè)面。

返回主題列表

測(cè)試主頁(yè)面

要測(cè)試主頁(yè)面,執(zhí)行以下步驟:

1.

頁(yè)面在您的默認(rèn) Web 瀏覽器中加載之后即顯示,包含現(xiàn)有的商品數(shù)據(jù)。

2.

使用水平滾動(dòng)條顯示最右邊的列。

3.

單擊列標(biāo)題,按照商品 name category 的升序或降序進(jìn)行排序。

4.

選擇 name 列,單擊 Freeze 菜單選項(xiàng)。

然后再次使用水平滾動(dòng)條顯示最右邊的列。

注意, name 列仍然可見(jiàn)。

5.

通過(guò)截?cái)嗌唐访麃?lái)縮小 name 列的 寬度

6.

單擊 Wrap 菜單選項(xiàng)。

注意,現(xiàn)在多個(gè)單詞的名稱顯示在多行上。

7.

單擊 Detach 菜單選項(xiàng)在瀏覽器中隔離面板的內(nèi)容。

再次單擊 Detach 按鈕,返回上一個(gè)布局。

8.

瀏覽 View 的菜單選項(xiàng),允許您隱藏某些列。

9.

瀏覽 Format 的菜單選項(xiàng),允許您調(diào)整列大小。


關(guān)閉瀏覽器窗口。

返回主題列表

使用 Image 和 Gauge 組件

您可以在 JSF 頁(yè)面中顯示商品的圖像。這些圖像作為啟動(dòng)應(yīng)用程序的一部分提供。要增強(qiáng) JSF 頁(yè)面中的圖像顯示,執(zhí)行以下步驟:

1.

返回 JDeveloper,在 Structure 窗格中,展開(kāi) af:panelTabbed | af:showDetailItem | af:panelCollection | af:table 并展開(kāi)第五個(gè)列(圖像列)的 af:column ,然后選擇 af:outputText

注意,圖像列設(shè)置為文本類型的值。為了能夠顯示圖像,您需要轉(zhuǎn)換該列的結(jié)構(gòu)。

2.

在 Structure 窗格中,右鍵單擊所選的組件并從上下文菜單中選擇 Convert

3.

在 Convert Output Text 對(duì)話框中,選擇 Image 組件。

單擊 OK

在 Confirm Convert 對(duì)話框中,單擊 OK

4.

在 Property Inspector 中,針對(duì) af:image 組件將 Source 域設(shè)置為 #{row.image}

5.

在 Structure 窗格中,展開(kāi) rating 列對(duì)應(yīng)的 af:column 組件(它是列表中的下一個(gè)值)。

6.

在 Component Palette 中,選擇 ADF Data Visualization ,然后在 Gauge 列表中選擇 Gauge 組件并將其拖放到 outputText 上方。

7.

在 Gauge 組件的 Property Inspector 中,將 Common 選項(xiàng)卡中的 Value 域設(shè)置為 #{row.rating}

8.

選擇 Appearance 選項(xiàng)卡。確保 Gauge Type 設(shè)置為 <default>,在 Image 部分中,將 ImageHeight 設(shè)置為 100 ,將 ImageWidth 設(shè)置為 100

9.

在該頁(yè)面設(shè)計(jì)中單擊右鍵并從上下文菜單中選擇 Run ,以在瀏覽器中運(yùn)行該頁(yè)面。

10.

該頁(yè)面加載到瀏覽器中,現(xiàn)在針對(duì)每個(gè)商品顯示一個(gè)圖像。

向右滾動(dòng)以顯示 rating 列。

11. 關(guān)閉瀏覽器窗口。

返回主題列表

使用菜單

要在您的頁(yè)面上實(shí)現(xiàn)菜單功能,執(zhí)行以下步驟:

1.

返回 JDeveloper,右鍵單擊 second 面板中的 menu 組件并從上下文菜單中選擇 Insert inside Facets menus --> Menu

2.

再次右鍵單擊 menu 組件,然后從上下文菜單中選擇 Insert inside Facets Menu menu 1 --> Menu Item

3.

使用 Property Inspector 將 Menu Item 的 Text 域更改為 Edit Items 。在 Menu Action 部分中,通過(guò)下拉列表將 Action 域設(shè)置為 edit

4.

在 Structure 窗格中,右鍵單擊 af:commandMenuItem 組件并從上下文菜單中選擇 Insert after af:commandMenuItem - Edit Items --> Menu Item

5.

使用 Property Inspector 將 Menu Item 的 Text 域更改為 Remove Items 。在 Menu Action 部分中,通過(guò)下拉列表將 Action 域設(shè)置為 edit

6.

在 Structure 窗格中,選擇 af:menu - menu1 組件,然后使用 Property Inspector 將 Text 域更改為 Admin

7.

單擊 JDeveloper 菜單欄上的 Save All 圖標(biāo),或者從菜單中選擇 File | Save All

返回主題列表

使用輸入組件

現(xiàn)在您希望創(chuàng)建一個(gè) Edit 頁(yè)面,以顯示商品詳細(xì)信息并允許您進(jìn)行更新。要?jiǎng)?chuàng)建 Edit 頁(yè)面,執(zhí)行以下步驟:

1.

單擊 faces-config.xml 選項(xiàng)卡,顯示頁(yè)面流圖。

2.

雙擊 edit.jspx 圖標(biāo),創(chuàng)建 edit 頁(yè)面。

3.

在 Create JSF Page 對(duì)話框中,保留 File Name 為默認(rèn)值,使用 simple 頁(yè)面模板并選中 Create as XML Document 復(fù)選框。

單擊 OK

4.

新頁(yè)面打開(kāi),包含模板特性。

5.

products 從 Data Controls 窗格拖放到 center facet 上。

6.

從動(dòng)態(tài)菜單中選擇 Forms --> ADF Form...

7.

在 Edit Form Fields 中,選中 Include Navigation Controls Include Submit Button 選項(xiàng)。

單擊 OK

8.

選擇頁(yè)面上的 Submit 按鈕,使用 Property Inspector 通過(guò)下拉列表將 Action 域設(shè)置為 save

9.

返回該頁(yè)面,右鍵單擊 rating 項(xiàng)并從上下文菜單中選擇 convert

10.

在 Convert 對(duì)話框中選擇 Input Number Slider

單擊 OK

在 Confirm Convert 對(duì)話框中,單擊 OK 接受默認(rèn)值。

11.

使用 Property Inspector 將 Input Number Slider 組件的 Minimum 域設(shè)置為 1

12.

返回頁(yè)面設(shè)計(jì),選擇 category 項(xiàng)并刪除。

13.

在 Data Controls 中,展開(kāi) products 并將 category 拖放到 cost 項(xiàng)上方。

14.

從動(dòng)態(tài)菜單中選擇 Single Selections --> ADF Select One Choice ...

15.

在 Edit List Binding 對(duì)話框中,單擊 Fixed List 選項(xiàng),從下拉列表中選擇 category 作為 Base Data Source Attribute。在 Set of Values 窗格中,輸入以下值:

Electronics
Computers
Software

單擊 OK

16.

在 Component Palette 中,從 ADF Faces Common Components 中選擇 Image 組件并將其拖放到 image 項(xiàng)下方。

17.

在 Insert Image 對(duì)話框中,單擊 Source 域旁的 Bind 按鈕。

18.

在打開(kāi)的 Bind to Data 對(duì)話框中,將組件綁定到以下數(shù)據(jù)。展開(kāi) ADF Binding | bindings | image | inputValue ,然后單擊 Insert Into Selection 將所選內(nèi)容移到 Expression 域中。

單擊 OK

19.

返回 Insert Image 對(duì)話框,單擊 Finish

20.

重新打開(kāi)頁(yè)面流圖,右鍵單擊 main.jspx 圖標(biāo)并從上下文菜單中選擇 Run

21.

展開(kāi) Admin 菜單,選擇 Edit Items 調(diào)用 Edit 頁(yè)面。

22.

Edit 頁(yè)面顯示。

23.

嘗試 category 域旁的 LOV ,選擇一個(gè)新值。

24.

顯示 manufactured 域旁的 日歷 ,選擇一個(gè)新值。

25.

更改圖像文件的名稱(即,從 nano 更改為 classic 或從 classic 更改為 nano )。

注意,即使對(duì)文件的引用發(fā)生了變化,圖像也保持不變。這就是我們將在下一個(gè)有關(guān)部分頁(yè)面呈現(xiàn)部分中解決的問(wèn)題。

26. 關(guān)閉瀏覽器,返回 JDeveloper。

返回主題列表

實(shí)現(xiàn)部分頁(yè)面呈現(xiàn)

為了刷新頁(yè)面,例如,當(dāng)您在 Edit 頁(yè)面中更改了圖像文件的名稱后,我們需要設(shè)置部分呈現(xiàn)行為。要實(shí)現(xiàn)該功能,執(zhí)行以下步驟:

1.

返回 JDeveloper,打開(kāi) Edit 頁(yè)面,選擇 Edit 頁(yè)面上的 image 域。

在 Common 選項(xiàng)卡的 Id 域中,鍵入 image1

使用 Property Inspector 中的 Behavior 選項(xiàng)卡將 AutoSubmit 設(shè)置為 true

2.

選擇頁(yè)面上的圖像圖標(biāo),使用 Property Inspector 在 Behavior 選項(xiàng)卡的 PartialTriggers 域中鍵入 image1

單擊 JDeveloper 菜單欄上的 Save All 圖標(biāo),或者從菜單中選擇 File | Save All

3.

重新打開(kāi)頁(yè)面流圖,右鍵單擊 main.jspx 圖標(biāo)并從上下文菜單中選擇 Run

4.

打開(kāi) Admin 菜單項(xiàng),選擇 Edit Item 選項(xiàng)。

5.

Edit 頁(yè)面顯示在您的瀏覽器中。

6.

您可以將圖像名稱(即 nano.gif )更改為其他值(即 classic .gif )。

注意,將立即反映新的圖像顯示。

7.

移動(dòng)滑塊更改 rating 級(jí)別。

單擊 Submit ,提交更改。

8.

返回主頁(yè)面,您會(huì)看到該項(xiàng)的圖像已經(jīng)替換,rating 值也已更改。

9.

關(guān)閉瀏覽器,返回 JDeveloper。

返回主題列表

向主頁(yè)面添加彈出功能

現(xiàn)在,您希望創(chuàng)建一個(gè)彈出窗口以增強(qiáng)特定商品的屬性。要?jiǎng)?chuàng)建該彈出功能,執(zhí)行以下步驟:

1.

在 Design 編輯器中打開(kāi) 頁(yè)面,然后選擇 Specials 選項(xiàng)卡。

2.

在 Component Palette 中,從 ADF Faces | Layout 中選擇 Panel Box 組件并將其拖放到 Specials 選

使用 JSF 開(kāi)發(fā)基于 Ajax 的用戶界面:ADF Faces 富客戶端組件簡(jiǎn)介


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 视频三区精品中文字幕 | 夜夜爽毛片 | 男人天堂网在线观看 | 久久亚洲成人 | 国产一区二区三区免费在线视频 | 99久久成人 | 国产精品深爱在线 | 欧美色综合久久 | 日韩色在线 | 国产在线精品观看一区 | 亚洲综色 | 欧美香蕉爽爽人人爽观看猫咪 | 亚洲精品久久久久福利网站 | 精品欧美日韩一区二区三区 | 日本欧美成 | 狠狠色丁香久久婷婷综合五月 | 精品视频在线免费播放 | 国产精品夜夜春夜夜爽久久 | 全黄大全大色全免费大片 | 亚洲精品午夜级久久久久 | 亚洲国产精品欧美综合 | 2021最新国产成人精品视频 | 91一区二区三区四区五区 | 久久久日韩精品国产成人 | 欧美黄色网址 | 国产系列 视频二区 | 国产产一区二区三区久久毛片国语 | 亚洲精品在线视频观看 | 成人黄色一级毛片 | 青青青国产免费手机视频在线观看 | 欧日韩一区二区三区 | 欧美亚洲国产一级毛片 | 久久精品一区二区三区不卡牛牛 | 欧美亚洲国产另类在线观看 | 亚洲国产欧美一区二区欧美 | 成人国产精品视频 | 国产三级久久久精品三级 | 无遮挡一级毛片性视频不卡 | 99热热久久 | 亚洲毛片免费观看 | 这里只有久久精品视频 |