国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

當前流行的J2EE WEB應用架構區分(轉)

當前流行的J2EE WEB應用架構區分(轉)

更新時間:2022-05-16 文章作者:未知 信息來源:網絡 閱讀次數:

1. 架構概述

J2EE體系包括java server pages(JSP) ,java SERVLET, enterprise bean,WEB service等技術。這些技術的出現給電子商務時代的WEB應用程序的開發提供了一個非常有競爭力的選擇。怎樣把這些技術組合起來形成一個適應項目需要的穩定架構是項目開發過程中一個非常重要的步驟。完成這個步驟可以形成一個主要里程碑基線。形成這個基線有很多好處:

各種因數初步確定
為了形成架構基線,架構設計師要對平臺(體系)中的技術進行篩選,各種利弊的權衡。往往架構設計師在這個過程中要閱讀大量的技術資料,聽取項目組成員的建議,考慮領域專家的需求,考慮贊助商成本(包括開發成本和運行維護成本)限額。一旦架構設計經過評審,這些因數初步地就有了在整個項目過程中的對項目起多大作用的定位。
定向技術培訓
一旦架構師設計的架構得到了批準形成了基線,項目開發和運行所采用的技術基本確定下來了。眾多的項目經理都會對預備項目組成員的技術功底感到擔心;他們需要培訓部門提供培訓,但就架構師面對的技術海洋,項目經理根本就提不出明確的技術培訓需求。怎不能夠對體系中所有技術都進行培訓吧!有了架構里程碑基線,項目經理能確定這個項目開發會采用什么技術,這是提出培訓需求應該是最精確的。不過在實際項目開發中,技術培訓可以在基線確定之前與架構設計并發進行。
角色分工
有了一個好的架構藍圖,我們就能準確劃分工作。如網頁設計,JSP 標簽處理類設計,SERVLET 設計,session bean設計,還有各種實現。這些任務在架構藍圖上都可以清晰地標出位置,使得項目組成員能很好地定位自己的任務。一個好的架構藍圖同時也能規范化任務,能很好地把任務劃分為幾類,在同一類中的任務的工作量和性質相同或相似。這樣工作量估計起來有一個非常好的基礎。
運行維護
前面說過各個任務在架構圖上都有比較好的定位。任何人能借助它很快地熟悉整個項目的運行情況,錯誤出現時能比較快速地定位錯誤點。另外,有了清晰的架構圖,項目版本管理也有很好的版本樹軀干。
擴展性
架構猶如一顆參天大樹的軀干,只要軀干根系牢,樹干粗,長一些旁支,加一些樹葉輕而易舉無疑。同樣,有一個穩定的經得起考驗的架構,增加一兩個業務組件是非常快速和容易的。
大家都知道這些好處,一心想形成一個這樣的J2EE應用程序架構(就像在windows平臺中的MFC)。在這個路程中經歷了兩個大的階段:

1.1. 模型1

模型1其實不是一個什么穩定架構,甚至談不上形成了架構。模型1的基礎是JSP文件。它從HTTP的請求中提取參數,調用相應的業務邏輯,處理HTTP會話,最后生成HTTP文檔。一系列這樣的JSP文件形成一個完整的模型1應用,當然可能會有其他輔助類或文件。早期的ASP 和 PHP 技術就屬于這個情況。

總的看來,這個模型的好處是簡單,但是它把業務邏輯和表現混在一塊,對大應用來說,這個缺點是令人容忍不了的。

1.2. 模型2

在經過一番實踐,并廣泛借鑒和總結經驗教訓之后,J2EE應用程序終于迎來了MVC(模型-視圖-控制)模式。MVC模式并不是J2EE行業人士標新立異的,所以前面我談到廣發借鑒。MVC的核心就是做到三層甚至多層的松散耦合。這對基于組件的,所覆蓋的技術不斷膨脹的J2EE體系來說真是福音和救星。

它在瀏覽器(本文對客戶代理都稱瀏覽器)和JSP或SERVLET之間插入一個控制組件。這個控制組件集中了處理瀏覽器發過來的HTTP請求的分發邏輯,也就是說,它會根據HTTP請求的URL,輸入參數,和目前應用的內部狀態,把請求分發給相應的WEB 層的JSP 或SERVLET。另外它也負責選擇下一個視圖(在J2EE中,JSP,SERVLET會生成回給瀏覽器的html從而形成視圖)。集中的控制組件也有利于安全驗證,日志紀錄,有時也封裝請求數據給下面的WEB tier層。這一套邏輯的實現形成了一個像MFC的應用框架,位置如圖:




1.3. 多層應用

下圖為J2EE體系中典型的多層應用模型。

Client tier客戶層
一般為瀏覽器或其他應用。客戶層普遍地支持HTTP協議,也稱客戶代理。
WEB tier WEB應用層
在J2EE中,這一層由WEB 容器運行,它包括JSP, SERVLET等WEB部件。
EJB tier 企業組件層
企業組件層由EJB容器運行,支持EJB, JMS, JTA 等服務和技術。
EIS tier 企業信息系統層
企業信息系統包含企業內傳統信息系統如財務,CRM等,特點是有數據庫系統的支持。



應用框架目前主要集中在WEB層,旨在規范這一層軟件的開發。其實企業組件層也可以實現這個模型,但目前主要以設計模式的形式存在。而且有些框架可以擴充,有了企業組件層組件的參與,框架會顯得更緊湊,更自然,效率會更高。

2. 候選方案

目前,實現模型2的框架也在不斷的涌現,下面列出比較有名的框架。

2.1. Apache Struts

Struts是一個免費的開源的WEB層的應用框架,apache軟件基金致力于struts的開發。Struts具是高可配置的性,和有一個不斷增長的特性列表。一個前端控制組件,一系列動作類,動作映射,處理XML的實用工具類,服務器端java bean 的自動填充,支持驗證的WEB 表單,國際化支持,生成HTML,實現表現邏輯和模版組成了struts的靈魂。

2.1.1. Struts和MVC

模型2的目的和MVC的目的是一樣的,所以模型2基本可以和MVC等同起來。下圖體現了Struts的運作機理:




2.1.1.1. 控制

如圖所示,它的主要部件是一個通用的控制組件。這個控制組件提供了處理所有發送到Struts 的HTTP請求的入口點。它截取和分發這些請求到相應的動作類(這些動作類都是Action類的子類)。另外控制組件也負責用相應的請求參數填充 From bean,并傳給動作類。動作類實現核心商業邏輯,它可以通過訪問java bean 或調用EJB。最后動作類把控制權傳給后續的JSP 文件,后者生成視圖。所有這些控制邏輯利用一個叫struts-config.xml文件來配置。

2.1.1.2. 模型

模型以一個或幾個java bean的形式存在。這些bean分為三種:

Form beans(表單Beans)
它保存了HTTP post請求傳來的數據,在Struts里,所有的Form beans都是 ActionFrom 類的子類。
業務邏輯beans
專門用來處理業務邏輯。
系統狀態beans
它保存了跨越多個HTTP 請求的單個客戶的會話信息,還有系統狀態。
2.1.1.3. 視圖

控制組件續傳HTTP請求給實現了視圖的JSP文件。JSP能訪問beans 并生成結果文檔反饋到客戶。Struts提供JSP 標簽庫: Html,Bean,Logic,Template等來達到這個目的,并有利于分開表現邏輯和程序邏輯。

2.1.2. Struts的細節分析

2.1.2.1. 視圖-控制-模型

用戶發出一個*.do的HTTP請求,控制組件接收到這個請求后,查找針對這個請求的動作映射,再檢查是否曾創建過相應的動作對象(action實例),如果沒有則調用actionmapping生成一個動作對象,控制組件會保存這個動作對象供以后使用。接著調用actionmapping的方法得到actionForm對象。之后把actionForm作為參數傳給動作對象的perform方法,這個方法結束之后會返回給控制組件一個 actionforward對象。控制組件接著從這個對象中獲取下一個視圖的路徑和重定向屬性。如果為重定向則調用HTTPSERVLETREPONSE的方法來顯示下一個視圖,否則相繼調用requestdispatcher, SERVLETcontext的方法續傳HTTP請求到下一個視圖。

當動作對象運行perform方法時,可能出現錯誤信息。動作對象可以保存這些錯誤信息到一個error對象中,接著調用自身的saveerrors方法把這個錯誤保存到request對象的屬性中。接著動作對象調用actionmapping對象的getInput方法從動作映射中獲取input參數,也就是產生輸入的視圖,并以這個input為參數生成一個actionforward對象返回。這個input參數的JSP中一般有HTTP:errors定制標簽讀取這些錯誤信息并顯示在頁面上。

下面是一個logon.JSP 的代碼實例:

<%@ page language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

<html:html locale="true">
<head>
<title><bean:message key="logon.title"/></title>
<html:base/>
</head>
<body bgcolor="white">

<html:errors/> <!--如果出現錯誤會顯示在這里-->

<html:form action="/logon" focus="username">
<table border="0" width="100%">

<tr>
<th align="right">
<bean:message key="prompt.username"/>
</th>
<td align="left">
<html:text property="username" size="16" maxlength="16"/>
</td>
</tr>

<tr>
<th align="right">
<bean:message key="prompt.password"/>
</th>
<td align="left">
<html:password property="password" size="16" maxlength="16"
redisplay="false"/>
</td>
</tr>

<tr>
<td align="right">
<html:submit property="submit" value="Submit"/>
</td>
<td align="left">
<html:reset/>
</td>
</tr>






2.1.2.2. 模型到視圖

模型到視圖指視圖在顯示之前裝載系統數據到視圖的過程。系統數據一般為模型內java bean的信息。示意圖表現了由控制組件forward過來的有html:form定制標簽的JSP 的處理邏輯。

html:form定制標簽處理對象從application scope(通過查詢SERVLETCONTEXT對象的屬性來實現)獲取先前由控制組件actionSERVLET放在那里的動作映射等對象,由html:form 的action屬性查得actionform名字、類型和范圍等信息,在相應的范圍內查找actionform,如果有則利用它的信息填充html form表單[實際填充動作在嵌套的html:text等定制標簽的處理對象中]。否則在相應范圍內創建一個actionform 對象。

2.1.3. 優缺點

優點:

一些開發商開始采用并推廣這個框架
作為開源項目,有很多先進的實現思想
對大型的應用支持的較好
有集中的網頁導航定義
缺點:

不是業屆標準
對開發工具的支持不夠
復雜的taglib,需要比較長的時間來掌握
html form 和 actionform的搭配比較封閉,但這也是它的精華所在。
修改建議
把actionform屬性的設置器和訪問器修改成讀取或生成xml文檔的方法,然后 html form和actionform之間用xml文檔進行數據交換,使之松散耦合,適應數據結構易變化的應用。




2.2. JATO

JATO應用程序框架是iPlanet 應用程序框架的舊名。它是一個成熟的、強大的,基于J2EE標準的面向于開發WEB應用程序的應用框架。結合了顯示字段、應用程序事件、組件層次和以頁面為中心的開發方法、以及MVC和服務到工作者service-to-workers的設計模式等概念。JATO可適用于中、大、超大規模的WEB應用。但是它也不是一個企業層的應用框架,也就是說它不會直接提供創建EJB, WEB services等企業層組件的方法,但用它可以構造出訪問企業層組件的客戶應用。

這個框架功能主要有三部分組成:

iPlanet應用框架核心;
iPlanet應用框架組件;
iPlanet應用框架擴展。
應用框架核心定義了基本接口、對象協議、簡單組件,以及iPlanet應用框架程序的最小核心。包括視圖簡單組件、模型簡單組件、請求分發組件和可重用命令對象。iPlanet應用框架組件利用框架核心定義的基本接口、協議和組件向開發者提供高層的重用組件,這些組件既有與特定視覺效果無關的水平組件,同時也有適應特定實用環境、提高可用性而特意提供的垂直型組件。框架擴展實現了用框架相容的方法訪問非J2EE環境的方法。通常情況下,擴展被框架應用程序用來無縫訪問J2EE容器特定功能。JATO平臺棧圖很清楚地表達了這個情況。

JATO最大的威力在:對于快速開發用戶,你能利用框架組件和擴展提高生產率,對于要求更大靈活性的用戶,你能實現框架核心提供的接口來保持應用的框架兼容性。







此圖表示實現一個JATO應用程序,可以簡單地實現控制組件module1Servlet,視圖組件ListCustomersViewBean和模型組件CustomersModuleImpl,以及一個給客戶代理顯示界面的ListCustomers.jsp文件。并清楚地表明這些組件與JATO框架組件的繼承關系。




JATO標簽庫提供了VIEW對象與JSP文件的接口。庫中標簽處理程序負責實現VIEW對象和JSP產生地客戶端文檔的信息同步和交換。這個圖清楚地表達了這種對應關系

2.2.1. MVC分析




前端控制組件接收用戶發來的任何請求,這個可在WEB.xml中指定請求分發組件負責視圖管理和導航,和前端控制組件封裝在ApplicationSERVLETBase一起實現。應用程序開發者需要為每一個子系統(人力資源,財務,CRM等)實現一個此類的繼承。

請求分發組件分發請求給工作者,工作者實現了command接口。應用開發者可以實現這個接口。JATO提供了一個缺省實現:DefaultRequestHandingCommand,這個實現會把請求傳給視圖組件的特定事件。

組合視圖是指視圖組件在顯示給用戶時的層次關系:根視圖是一個ViewBean類的對象字段是一個DisplayField類的對象,容器視圖是一個ContainerView類的對象。視圖組件類的層次關系如下圖:




2.2.2. 優缺點分析

優點:

這種框架的適應范圍大,即提供了底層接口,也有立即可用的組件
具有與客戶端RAD開發工具相似的開發概念如頁為中心(等同于VB的FORM),事件處理等.
對大型的應用支持較好
缺點:

不是業屆標準
目前還沒有開發工具的支持(然JATO已經為工具支持做好了準備)
沒有定義網頁導航,開發者在視圖中自己指定具體的導航URL
修改建議
把眾多的VIEW/MODEL對應修改成xml文檔傳遞數據,加上集中的網頁導航定義

2.3. JSF(JavaServer Faces)

JSF是一個包括SUN在內的專家組正在定義的開發WEB應用用戶界面的框架,JSF 技術包括:

一組API,它實現UI了組件,管理組件的狀態,處理事件,輸入校驗,定義頁面導航,支持國際化和訪問;
一個JSP定制標簽庫實現與JSP的接口。
JSF非常簡單,是一個定義良好的編程模型。利用這個技術,開發者通過在頁面內組合可重用的UI組件,在把這些組件和應用的數據源相連,路由客戶產生的事件到服務器端的事件處理器進行編程。JSP處理了所有幕后的復雜工作,使得開發者把關注重點放在應用代碼上。

2.3.1. STRUTS、JATO和JSF比較

它們之間有部分重疊,但重點不一樣。

STRUTS和JATO都提供了一個MVC式的應用模型,而JSF只在用戶界面上提供編程接口。這意味著前兩者涉及的范圍比后者廣。JSF可以成為前兩者在UI開發的部分。
JSF的規范的發布版將在 2002年底發布,實現可能要比這個時間晚些。另外將會有工具支持這個框架的應用開發。
2.4. WAF

WAF是WEB APPLICATION FRAMWORK的簡稱,是SUN藍皮書例子程序中提出的應用框架。它實現了 MVC和其他良好的設計模式。

2.4.1. 細節分析



點擊這里看大圖

2.4.2. 視圖-控制-模型

如圖所示,開發人員編寫的兩個xml配置文件定義了WAF的運作參數。Screendefinition.xml定義了一系列的屏幕(screen)。Mapping.xml則定義了某個動作之后應該顯示的屏幕,但沒有指定屏幕到哪里拿數據。

用戶發出一個HTTP請求(*.screen),由TemplateSERVLET屏幕前端控制組件接收,它提取請求信息,設置request對象CurrentScreen屬性,再把請求發到模版JSP。模版JSP收到請求后,JSP中的Template標簽察看這個當前屏幕,并從屏幕定義文件(Screendefinition.xml)中獲取這個屏幕的具體參數,再生成html返回給客戶。

假設返回給客戶的html中包括了html表單,用戶在輸入一定數據之后提交,發出一個HTTP請求(*.do)。這個請求被MainSERVLET接收,它提取請求信息,察看動作映射文件(mapping.xml),設置處理這個請求的動作對象(HTTPAction對象),交給requestprosessor對象處理。Requestprosessor對象調用動作對象完成任務,如果需要進一步處理,requestprosessor對象會調用WEBclientcontroler對象的事件處理機制。MainSERVLET在處理完請求之后,從屏幕流管理對象那里得到下一個屏幕,并把請求傳給這個屏幕的JSP文件。

值得一提的是WEBclientcontroler事件處理機制最終把HTTP請求的數據傳到了EJBAction對象那里處理。這樣HTTPAction對象和EJBAction對象形成了兩級處理機制,前一級與request對象緊密相關,把數據封裝起來形成一個Event對象,再傳給了EJBAction對象,后者與Request對象無關。這個方式可以形成一個session級別的數據處理機制。下圖顯示了這個方法。HTTPAction1對象處理一個請求,并把數據放到一個狀態SessionBean內,HTTPAction2也如此,當HTTPAction3接收到HTTP請求之后,把控制傳給EJBAction, 后者獲取狀態SessionBean數據,處理請求,成功后清控狀態SessionBean的內容。這個機制非常適應多個輸入頁面才能滿足一個業務的輸入數據的情況(比如購物車)。




2.4.3. 優缺點分析

優點

屏幕導航定義明確
為框架的擴展提供了一個空間
缺點

源碼比較亂,穩定性和可靠性沒人驗證。
只是一個框架軀干,沒有正式的model層,視圖的概念不強
沒有模型到視圖的定義
修改意見
只有一個框架軀干,正為實現自己的應用框架提供了靈活性。沒有僵化的視圖概念,提供了在網頁輸入到模型的擴充接口,比如插入XML數據交換。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        成人精品一区二区三区四区 | 精品亚洲成a人| 欧美日韩国产高清一区二区三区 | 99久久久精品| 亚洲视频中文字幕| 色综合久久中文综合久久牛| 亚洲素人一区二区| 欧美三级在线视频| 九色综合狠狠综合久久| 久久久久9999亚洲精品| 国产福利91精品一区| 亚洲美女视频在线| 欧美图片一区二区三区| 日韩av在线免费观看不卡| 欧美一二区视频| 狠狠v欧美v日韩v亚洲ⅴ| 久久美女艺术照精彩视频福利播放| 亚洲地区一二三色| 日本伊人午夜精品| 日本一区二区三区国色天香| 国产一区二区伦理| 久久久久久电影| 国产mv日韩mv欧美| 国产情人综合久久777777| 成人综合在线观看| 久久综合狠狠综合| 日韩电影在线观看电影| 国产精品久久久久久久久动漫| 国产精品一区二区久久精品爱涩| 欧美xxxx在线观看| 国产成人在线看| 亚洲一区视频在线| 91麻豆精品国产91久久久久久久久 | 丝袜美腿亚洲色图| 9191成人精品久久| 国产精品69毛片高清亚洲| 国产精品国产三级国产aⅴ无密码| 91蝌蚪porny成人天涯| 久久免费精品国产久精品久久久久 | 欧美国产视频在线| 风间由美一区二区av101| 国产精品动漫网站| 欧美军同video69gay| 九九国产精品视频| 亚洲人成网站色在线观看| 欧美吻胸吃奶大尺度电影| 亚洲日本青草视频在线怡红院| 国产v综合v亚洲欧| 性做久久久久久久久| 韩国欧美国产1区| 悠悠色在线精品| 久久伊人蜜桃av一区二区| 色婷婷国产精品| 看电视剧不卡顿的网站| 综合在线观看色| 日韩一卡二卡三卡| 色婷婷综合久久久中文一区二区 | 天使萌一区二区三区免费观看| 欧美精品一区二区三区高清aⅴ | 精品奇米国产一区二区三区| 成年人国产精品| 捆绑变态av一区二区三区 | 国产一区二区三区在线看麻豆| 国产精品久久久久影视| 精品国产一二三| 精品视频123区在线观看| 亚洲码国产岛国毛片在线| 欧美成人一级视频| 欧美日韩激情一区二区| 国产成人精品免费一区二区| 日韩综合小视频| 一区二区三区免费看视频| 久久久久久久久久久久电影| 8x8x8国产精品| 一本色道a无线码一区v| 国产电影精品久久禁18| 亚洲毛片av在线| 天堂在线一区二区| 一区二区在线电影| 国产精品国产三级国产有无不卡| 精品久久久久久综合日本欧美| 欧美综合欧美视频| 在线视频中文字幕一区二区| zzijzzij亚洲日本少妇熟睡| 国产一区在线观看麻豆| 久久国产视频网| 自拍偷自拍亚洲精品播放| 婷婷夜色潮精品综合在线| 夜夜操天天操亚洲| 亚洲在线观看免费视频| 亚洲午夜在线视频| 性欧美疯狂xxxxbbbb| 香港成人在线视频| 亚欧色一区w666天堂| 亚洲国产日韩在线一区模特| 久久久久久久久久看片| 一二三四社区欧美黄| 午夜伦理一区二区| 青青草伊人久久| 日本欧美一区二区| 久久er99精品| 国产精品一区二区三区乱码 | 亚洲欧美日韩人成在线播放| 日韩和欧美一区二区三区| 午夜国产不卡在线观看视频| 三级欧美韩日大片在线看| 石原莉奈一区二区三区在线观看| 奇米亚洲午夜久久精品| 九色|91porny| 成人精品在线视频观看| 色婷婷av一区二区三区gif | 久久国产麻豆精品| 风间由美一区二区av101| www.av精品| 在线91免费看| 国产欧美一区二区精品仙草咪| 五月婷婷色综合| 国产一区二区成人久久免费影院| 成人av综合一区| 欧美亚洲高清一区| 久久综合九色综合欧美98| 亚洲欧洲日韩在线| 日韩高清一区在线| 国产成人午夜电影网| 99精品欧美一区| 精品久久人人做人人爽| 成人免费在线播放视频| 三级久久三级久久久| 懂色av一区二区三区蜜臀| 欧美日韩一级片在线观看| 欧美成人女星排行榜| 亚洲天堂成人在线观看| 色综合咪咪久久| 久久先锋影音av鲁色资源网| 亚洲精品伦理在线| 国产成人福利片| 欧美精品久久久久久久多人混战| 日本一区二区成人| 美女视频一区二区三区| 理论电影国产精品| 欧美videos大乳护士334| 亚洲摸摸操操av| 国产成人一区在线| 777a∨成人精品桃花网| 亚洲裸体在线观看| 大桥未久av一区二区三区中文| 在线电影院国产精品| 欧美性感一区二区三区| 中文av字幕一区| 国产一区福利在线| 欧美一级日韩免费不卡| 一区二区三区国产| 91麻豆国产自产在线观看| 日韩欧美一二区| 婷婷综合另类小说色区| 欧美午夜精品免费| **欧美大码日韩| 成人国产精品视频| 国产精品视频麻豆| 国产黄色成人av| 国产视频在线观看一区二区三区| 蜜桃一区二区三区四区| 99精品欧美一区二区蜜桃免费| 一区二区三区在线看| 成人国产电影网| 亚洲日本青草视频在线怡红院 | 久久久一区二区| 首页综合国产亚洲丝袜| 91麻豆swag| 亚洲乱码国产乱码精品精小说| 91视频一区二区| 亚洲色图欧美偷拍| 欧美日韩在线播放一区| 亚洲成人动漫在线观看| 久久―日本道色综合久久| 国产精品一区二区久久不卡| 国产性天天综合网| 成人av在线播放网址| 亚洲欧洲国产日韩| 欧美综合亚洲图片综合区| 国产婷婷色一区二区三区四区| 91免费视频网| 亚洲综合在线五月| 欧美人狂配大交3d怪物一区| 日日摸夜夜添夜夜添精品视频| 日韩欧美色综合| 国产一二精品视频| 综合网在线视频| 国产精品午夜在线| 色呦呦国产精品| 日韩高清在线电影| 国产亚洲欧美中文| 91丨九色丨黑人外教| 日韩精品每日更新| 久久中文字幕电影| 色素色在线综合| 亚洲电影在线免费观看| 精品国产伦一区二区三区观看方式 | 久久久久久久综合| 欧美在线不卡一区|