999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SOA與Web Service的飛機保障信息系統集成

2018-01-18 09:19:22,,
計算機工程 2018年1期
關鍵詞:飛機服務信息

, ,

(北京航空航天大學 機械工程及自動化學院,北京 100191)

0 概述

隨著計算機技術和網絡技術的高速發展,航空裝備保障企業為提高企業事務處理效率,大力推進企業信息化。航空裝備保障企業的各個部門根據自身的情況與需要分別建立了信息和業務系統,如飛機保障資源管理系統、敏捷平臺和飛機外場服務綜合信息系統等。這些業務系統往往采用不同的技術標準與框架、數據結構、軟硬件平臺、交互模式和軟件開發商,其中部分系統已經部署多時,這些跨平臺、跨部門的異構系統造成了信息壁壘[1-2]。為在充分利用現有部門信息系統的基礎上,進一步推進飛機綜合保障部門信息化水平,迫切地需要研究如何對這些分散、孤立的部門信息系統的業務和數據進行集成。

行業中解決異構系統集成問題的主流方法是企業應用集成(Enterprise Application Integration,EAI),其經過多年的探索和發展,具體方法有很多種,現今在IT界內應用較為廣泛的是面向服務的架構(Service-Oriented Architecture,SOA)[3-4],在本文中便是以“服務”為中心,把飛機保障資源管理系統、敏捷平臺和飛機外場服務綜合信息系統提供的功能發布為“服務”,并將飛機保障信息系統構建成為這些服務的集合,提供一個靈活、低成本、松耦合與可擴展的基礎服務集成平臺,實現飛機保障信息的數據集成和應用集成。盡管基于SOA的開發方法不是最新概念,但一方面它經過多年的發展已經很成熟,較為穩定,能夠很好地適應航空領域的信息化特點[5];另一方面它采用SOA來開發和部署“服務”,能夠充分利用現有的信息系統,降低新系統的開發成本,從而打破信息壁壘,進一步推進航空企業信息化的發展[6]。

Web Service技術不僅是SOA模式的主要實現技術,而且是建立在獨立平臺的協議和開放標準基礎上的企業應用集成技術,它對操作系統、開發框架、服務器與數據庫等沒有任何限制,可動態查詢、發現并調用所需的服務[7-8]。航空領域因其特殊性,具有封閉性,與互聯網領域相比技術更新速度較慢,因此,需要相對成熟的技術。

為此,本文從異構系統集成的角度出發,通過分析飛機保障信息系統集成需求和特征,基于SOA和Web Service開發技術建立異構系統集成模型,設計集成體系架構的3個模塊(服務網提供者、服務注冊代理與服務請求者),并按服務描述、服務實現、服務數據封裝、服務發布、服務綁定與服務調用的順序介紹系統集成的具體實現過程。

1 飛機保障信息系統集成方法

飛機保障信息系統是面向某飛機設計研究所綜合保障部門的企業信息化系統,它通過軟件平臺實現飛機保障各項工作技術狀態管理,支持各項飛機保障工作技術狀態信息的共享與分發,可以與所內外其他主要數字化平臺實現互通互聯。從事務角度看,飛機保障信息系統集成是將各科室的業務系統集成到一個統一的信息系統中,實現各科室業務和數據共享,對飛機綜合保障部門進行全面的閉環管理;從技術角度看,它是在不做出過多修改的情況下將不同已有的應用程序和業務數據集成到一起的過程,從而最終實現業務流程的集成和數據共享。系統集成需求如圖1所示。

圖1 飛機保障信息系統集成需求

本文根據對某飛機設計研究所綜合保障部門需求的調研結果,總結了以下飛機保障信息系統集成存在的難點:

1)跨框架與跨平臺:所需要集成的系統往往是采用不同的框架和技術,由不同的軟件開發商開發,因此,如何將這些異構平臺集成到本系統中是一大難點。

2)高效性與低成本:如何使被集成的系統盡量少被修改,尤其是針對正在運行的系統,應盡量保證其功能完整性,并降低系統集成成本。

3)可擴展性與靈活性:如何保證未來開發的系統能較為簡單地集成到本系統中,并使被集成的系統與本系統易于修改。

飛機保障信息系統集成利用SOA組件模型,將飛機保障資源管理系統、敏捷平臺和飛機外場服務綜合信息系統中所需集成的功能模塊發布成“服務”,然后采用服務之間定義的接口和契約來實現系統集成。接口一般采用開放標準和協議,利用中立的方式進行定義,因此,它獨立于實現服務的硬件平臺、操作系統與編程語言[9]。飛機保障信息系統集成采用SOA模型,便于充分利用現有資源,降低整合和管理的復雜性,提高靈活性和重用性。本文在采用SOA框架的同時,以Web Service作為實現飛機保障信息系統中“服務”的最主要手段,其本質是通過傳輸固定格式的XML來解決跨平臺調用問題[10]。以飛機試飛管理系統的試飛大綱管理功能為例,本文利用Web Service技術調用飛機試飛管理系統發布的試飛大綱管理“服務”,其原理如圖2所示。

圖2 Web Service調用原理

根據Web Service調用原理,本文建立基于SOA和Web Service設計的系統集成模型,如圖3所示。此模型基于J2EE架構與Web服務器,可以解決飛機保障信息系統集成存在的高效性與低成本、可擴展性與靈活性等難點。模型總體分為服務提供者、服務注冊代理與服務請求者3個部分。

1)服務提供者是根據集成業務需求,把飛機保障資源管理系統、飛機試飛管理系統、飛機外場服務綜合信息系統與敏捷平臺等所內外系統所提供的“服務”用XSD文件進行定義,并生成Web Service描述語言(Web Service Description Language,WSDL)文件,然后采用基于Spring-WS的contract-first模式編寫Web服務,最后把服務生成的WSDL文件發布到統一描述、發現和集成(Universal Desotiption,Discovery and Intergation,UDDI)注冊中心。

2)服務注冊代理是一個可被搜索的服務描述注冊中心,服務提供者可以在此發布它們的服務描述文件,服務注冊代理對其進行分類,并提供搜索服務。

3)服務請求者是狹義范圍的飛機保障信息系統,首先它在“服務注冊代理”中查找所需“服務”,然后根據查找結果,與服務提供者實現綁定,最后通過簡單對象訪問協議(Simple Object Access Protocol,SOAP)協議發送或接收可擴展標記語言(eXtensible Markup Language,XML)消息實現“服務”調用。

圖3 飛機保障信息系統集成模型

本文在構建模型和使用Web Service的過程中主要采用了4種標準和技術:XML,SOAP,WSDL,UDDI[11],它們都是開放標準和協議,可解決飛機保障信息系統集成存在的“跨框架與跨平臺”難點。

1)XML是Web服務中的數據傳輸基本格式[12-13],它使用Unicode編碼,采用自描述的數據結構,能夠以簡單的文本文檔格式儲存、傳輸、讀取數據。本文通過XML傳輸集成數據。

2)SOAP是用來交換信息的一種協議[14],它是分布式系統之間交換信息的輕量級方法,同時也是基于XML和HTTP的一種協議。本文利用SOAP進行消息傳遞。

3)WSDL是由IBM和微軟于2000年提出的一種用以描述Web Service的功能特征的語言[15]。本文利用WSDL描述服務語義和接口等信息。

4)UDDI本質上是一種目錄服務,是一種基于Web的分布式Web服務信息注冊中心的實現規范。本文利用UDDI對服務進行注冊和檢索。

2 飛機保障信息系統集成功能實現

本文從“服務提供者”“服務注冊代理”“服務請求者”3個方面介紹飛機保障信息系統集成功能實現。以集成飛機保障資源管理系統的過程為例,詳細敘述如何利用“發布服務”的思想實現異構系統集成。其中飛機保障資源管理系統是由天健志行軟件公司利用bootstrap3等框架開發的,采用oracle數據庫,與本文系統采用的框架、數據庫等完全不同。

2.1 “服務提供者”功能實現

“服務提供者”功能實現是基于Web Service將飛機保障資源管理系統、敏捷平臺等系統向飛機保障信息系統提供服務,包括服務描述、服務實現與服務數據封裝。

2.1.1 服務描述

服務描述是對飛機保障資源管理系統、敏捷平臺和飛機外場服務綜合信息系統等信息系統所提供服務的接口和實現細節的描述,主要包括數據結構、綁定信息、操作、分類、網絡位置和其他的元數據信息,其中分類和其他的元數據用來實現飛機保障信息系統的服務檢索和服務調用。本文利用WSDL實現服務描述。WSDL是基于XML語法描述服務,具有協議規范、普遍性、易讀性等特點,圖 4是WSDL規范結構圖。但由于WSDL語法較為復雜,手工編寫難度很大,因此本文采用先編寫XML Schema定義,后將其動態轉換為WSDL的方法來實現服務描述。

圖4 WSDL規范結構圖

XML Schema定義(XML Schema Definition,XSD)也稱XML Schema語言,用于定義可出現于XML文檔中的元素和屬性、其子元素的次序和數目、定義元素的數據類型和默認值等。它類似于DTD,定義了XML文檔的合法構建模塊。

本文以集成飛機保障資源管理系統為例介紹“服務描述”過程。首先利用XSD詳細定義了飛機保障資源管理系統等信息系統提供的服務所傳輸XML的名稱、命名空間、子元素、數據類型、數據默認值以及固定值等信息;然后在配置文件中對XSD進行配置,如在飛機保障資源管理系統中WEB-INF/dorado-home/datasources.xml文件進行配置,在此文件當中添加配置信息,包括XSD的地址、命名空間與WSDL的ID和地址等信息,在配置XSD后,啟動服務,請求如下地址:https://servername://dorado/webservice/.wsdl,便可查看生成的WSDL文件;最后把上述地址提供給服務注冊代理即可。

2.1.2 服務實現

服務實現是根據服務描述(即XSD與WSDL文件)和飛機保障信息系統集成需求編寫服務程序。因為Spring Web Services是contract-first模式即契約優先模式,它要求先確定服務描述再進行代碼開發,從而可以實現服務描述和實現之間的松散耦合,并確保Web服務的語言無關性,所以本文采用Spring-WS框架實現服務。本文中“服務實現”需要定義2個Java程序,一個是對服務傳輸數據對象化的處理數據訪問的類,另一個是處理業務邏輯的類。

處理數據訪問的類本質上是JavaBean與POJO,本系統在此采用了Object/XML映射技術,實現了Java對象與XML的相互轉換。因為JAXB(Java Architecture for XML Binding)是一個業界的標準,所以本文采用JAXB2,實現將服務傳輸的XML文檔反向生成Java對象樹。為了實現Object/XML轉換,需要在處理數據訪問的類名前添加annotation注解,在annotation注解中標明服務所采用的namespace、xmlRoot與相關屬性,而這些屬性都需要在“服務描述”中聲明,例如在飛機保障資源管理系統中“服務實現”處理數據訪問的類結構如下所示:

@XmlRootElement(name=“SupportRequest”,namespace=“http://www.bstek.com/ws”)//annotation,規定命名空間

@XmlAccessorType(XmlAccessType.FIELD)

//annotation注解

public class SupportRequest {}

注釋@XmlRootElement()、@XmlAccessorType()由JAXB2提供,XmlRootElement是用于定義SupportRequest類在序列化成XML之后的XmlRoot及namespace值,這兩個值來自于XSD文件;Xml AccessorType用于定義這個類中屬性在序列化成xml之后子節點名及通過什么樣方式訪問這些屬性值,這里定義成XmlAccessType.FIELD,表示直接采用屬性名方式。

處理業務邏輯的類是用于接受飛機保障信息系統請求的類,類中處理具體業務邏輯的方法以飛機保障信息系統的輸入信息對象為入參,并且返回一個服務輸出信息對象,例如在飛機保障資源管理系統中“服務實現”處理業務邏輯的類結構如下所示:

@Endpoint

public class SupportResourceEndpoint{

@Resource

private TechnicaldocDao technicaldocDao;

@PayloadRoot(localPart="SupportResourceRequest",namespace="http://www.bstek.com/ws")//annotation,規定//命名空間

public @ResponsePayload SupportResponse getSup(@Request Payload SupporRequest request) throws Exception{

…//處理業務邏輯

return response;//返回調用結果

}

這個類采用了3類annotation,具體如下:

1)@Endpoint標明本文將這個類發布成一個Endpoint服務類,它是Spring-WS的特殊注解,表明這個類是Web Service的服務端點。而@Resource注解被用來激活一個命名資源(TechnicaldocDao)的依賴注入,擁有與@Resource注解所提供“TechnicaldocDao”相匹配的Spring管理對象會被注入。

2)具體處理業務邏輯的getSup()方法上面的注解@PayloadRoot用于標明此方法可以接收的XML信息,這里需要定義的是XML的namespace,同時XML的ROOT為SupportRequest的信息。

3)@ResponsePayload表示getSup()方法的返回值將作為響應的負載返回到Web Service調用客戶端。該方法中參數前的注釋@RequestPayload表示SupportRequest值需要從“飛機保障信息系統”請求的SOAP消息的Body中解析出來,解析后的Body部分的XML要反序列化成為需要的SupportRequest對象并作為參數,這里也采用了JAXB將負載的XML消息直接轉換成服務輸出信息的Java對象。

編寫相關Javabean與Endpoint后,在飛機保障資源管理系統的配置文件中對2類服務實現類進行配置,至此,一個完整的基于Spring-WS的Web Service的服務實現編寫與部署即全部完成。

2.1.3 服務數據封裝

服務數據封裝是把服務業務數據映射于某個封裝協議的凈荷中,并填充對應協議的包頭,然后形成封裝協議的服務數據包,最終完成速率適配。而SOAP是基于XML和HTTP的簡單、輕量級、擴展性很好的消息傳輸協議,它獨立于語言、平臺與底層傳輸機制,非常適合應用于分散的環境中,以點對點的方式進行交換結構化和類型化信息。因此,本文采用SOAP協議進行服務數據封裝。

本文中的服務數據封裝以“SOAP消息”為通信的基本單位,一條SOAP消息便是一個普通的XML文檔,SOAP Envelope是SOAP消息結構的主要容器,而SOAP Envelope里面包含一個可選的SOAP Header和一個必須的SOAP Body。本文利用Java提供的Java XML Pack實現SOAP協議,來創建、使用、發送和接收XML消息,具體信息可查看JAXP的API。

2.2 “服務注冊代理”功能實現

服務注冊代理是UDDI注冊中心,它是用來描述、發現并集成Web服務的一系列技術規范[16],本文借助UDDI實現Web服務的發布與搜索,從而大幅降低了飛機保障信息系統發布和尋找服務的成本,提高了企業運營效率。UDDI注冊中心分為公共UDDI注冊中心和私有UDDI注冊中心,由于本文的研究背景是面向飛機保障信息領域,因此采用私有UDDI注冊中心。其中UDDI注冊中心存儲的信息以XML形式表示。

發布服務是將“服務描述”即WSDL文件映射到UDDI,WSDL中的服務接口是服務可重用的抽象定義,而且要在UDDI注冊中心作為發布,從而將WSDL中元素在UDDI注冊中心發布為元素。

2.3 “服務請求者”功能實現

“服務請求者”是飛機保障信息系統調用飛機保障資源管理系統、敏捷平臺和飛機外場服務綜合信息系統等所提供的服務的過程,包括服務綁定與服務調用。

2.3.1 服務綁定

當飛機保障信息系統通過查詢服務注冊代理,得到所需服務的“服務描述”文件即WSDL文件后,通過WSDL定義的Web服務端點,將消息和操作信息綁定到某個具體的網絡協議與消息格式上。本文采用SOAP的綁定方式實現抽象消息交換模式與具體的傳輸協議和消息交換格式的綁定。

2.3.2 服務調用

服務調用是當實現服務綁定后,飛機保障信息系統調用飛機保障資源管理系統等系統提供的服務的過程。服務調用的實現需要根據 “服務提供者”生成的WSDL文件,編寫處理數據訪問與服務調用業務邏輯的類,其中處理數據訪問類與上文服務實現中的處理數據訪問類的結構類似,在此不再贅述。

服務調用業務邏輯的類主要實現對“服務提供者”提供的Web服務的調用。本文的服務請求者可調用那些不需要任何安全性驗證的Web服務,也可調用那些使用WS-Security進行認證的Web服務,同時也支持一些采用Http Basic進行認證的Web服務。飛機保障信息系統調用飛機保障資源管理系統的WebServiceInvoke類結構如下:

public class WebserviceInvokeTest {

public static void main(String[] args) throws Exception{

//設置要調用的目標Web Service的地址

Stringuri="http://localhost:8083/escmp/dorado/webservice/supportResourceWebService";

//初始化Webservice客戶端

WebServiceClientclient=new WebServiceClient(uri);

//設置要調用的Webservice的WS-Security認證所需要的//username及password,以及是否對用戶名及密碼進行加密傳輸

client.set Username Token("admin","81c1206f28f2738cdf 714b4e10428 c66f58eee10",true);

//設置要調用的Webservice的Http Basic認證所需要的//username及password,Http Basic認證當中所使用的密碼//為加密之前的密碼,而非被加密之后的密碼

client.setHttpAuthenticationCredentials("admin","admin");

//調用服務

SupportRequest request= new SupportRequest();

request.setSendStatus(0);

//設置在調用目標Webservice過程當中,需要將//Javabean與XML進行相互序列化的Javabean類的class

client.setMarshallerClasses(new Class[] {SurpportRequest.class,SurpportResponse.class});

//發送調用請求并返回調用結果

SupportResponse response=(SupportR esponse)client.sendAndReceive(request);

//判斷返回結果是否為空

if(response.getTechnicaldocuments()!=null){

//輸出返回結果

for(Technicaldocument technicaldocument:response.getTechnicaldocuments()){

System.out.println(" aircrafttype:" + technicaldocument.getAircrafttype());}

}

}

3 驗證與應用

本文提出飛機保障信息集成方法,應用Dorado平臺和Spring-WS框架開發基于SOA和Web Service的飛機保障信息系統。該系統是為飛機綜合保障相關部門的用戶提供一個統一的保障信息管理平臺,主要以飛機綜合保障工作的業務管理為基礎,以試飛管理和外場管理為核心業務,通過SOAP封裝XML信息實現與飛機保障資源管理系統、飛機試飛管理系統、飛機外場服務綜合信息系統等異構系統的集成及數據共享。該系統在某飛機設計研究所的綜合保障工作過程中進行了初步應用,驗證了上述異構系統集成方法的有效性。同時對于一些需要集成到本系統中的異構系統,也可按本文的方法,以“發布服務”的思想實現集成,使本文系統不斷完善。飛機保障信息系統的主界面如圖5所示。

圖5 系統驗證界面

本文系統于2016年5月份由航空系統某信息公司作為第三方企業進行了測試,測試總體結果如表1所示。首輪測試中出現問題如下:角色擁有不屬于自己權限,提示信息錯誤或不一致,輸入錯誤或無效的數據,輸入或輸出字段類型有誤,權限判別的業務流程設計不友好,飛機試飛管理系統集成數據沒有或錯誤驗證。產生這些問題的主要原因是需求定義不明確、功能性錯誤、頁面設計和需求不一致以及開發人員的疏忽。開發人員通過與需求方進行詳細溝通并提出完善措施,改進之后,在回歸測試中,上述問題均被解決,發現飛行統計過程中讀取的數據類型有誤等問題,這是由于修改集成業務邏輯而引入了新的錯誤。測試后開發人員采取了與飛機綜合保障部門業務人員加強溝通,修改與敏捷平臺集成的業務邏輯代碼,增加輸入與輸出限制判別與對集成數據進行控制等措施來改進本文系統。

表1 系統測試用例執行情況

最終本文系統于2016年9月通過了項目組的驗收,并已正式上線運行,筆者也每隔一段時間去現場收集用戶的反饋意見,目前系統運行穩定、可靠。

4 結束語

本文以航空企業信息化為背景,針對飛機綜合保障部門信息化集成需求,首先提出基于SOA和Web Services的異構系統集成方法,研究支撐SOA和Web Services技術的XML、SOAP、WSDL與UDDI等開發技術與標準;然后建立飛機保障信息系統集成模型,分析SOA和Web Service體系架構的3個模塊以及基本操作;最后通過飛機保障信息系統集成實例說明如何基于SOA與Web Services實現異構系統集成。目前SOA和Web Services技術已經成熟,但其在航空企業信息化領域的應用尚處于發展階段,需要對此做進一步研究,從而有效推進航空企業信息化水平,提高航空制造業整體效率。

[1] 王 穎,吳榮泉,黃美鋒,等.一個面向服務的EAI框架[J].計算機工程,2006,32(1):279-281.

[2] PAPAZOGLOU M P,HEUVEL W J.Service Oriented Architectures:Approaches,Technologies and Research Issues[J].The VLDB Journal,2007,16(3):389-415.

[3] 黃雙喜,范玉順,趙大哲,等.基于Web 服務的企業應用集成[J].計算機集成制造系統,2003,9(10):864-867.

[4] JURIC M B,LOGANATHAN R,SARANG P,et al.SOA Approach to Integration[M].Birmingham,UK:Packt Publishing Ltd.,2007.

[5] KUZYK R.Web Services:Standardizing EAI[J].EAI Journal,2002(3):123-128.

[6] HE Wu,XU Lida.Integration of Distributed Enterprise Applications:A Survey[J].IEEE Transactions on Industrial Informatics,2014,10(1):35-42.

[7] KRAFZIG D,BANKE K,SLAMA D.Enterprice SOA Service-Oriented Architecture Best Practices[M].[S.l.]:Prentice Hall,2005.

[8] 王衛玲.基于SOA的Web Services集成技術研究[D].南寧:廣西大學,2007.

[9] 高 潔,張相文.基于SOA的服務型電子政務模式研究[J].情報學報,2009(10):777-783.

[10] 張朝暉,徐立臻,董逸生,等.一種基于SOA的企業集成平臺[J].計算機工程,2011,37(5):258-260.

[11] 李安渝.Web Services技術與實現[M].北京:國防工業出版社,2003.

[12] 張文斌,葉紅云,陳恩紅.基于Web Service的B2B電子商務環境構建技術[J].計算機工程,2002,28(11):69-71.

[13] W3C Recommendation.Extensible Markup Language(XML) 1.0[EB/OL].(2000-10-06).http://www.w3.org/TR/REC-xml.

[14] 胡迎松,彭利文,池楚兵.基于.NET的Web應用三層結構設計技術[J].計算機工程,2003,29(8):173-175.

[15] 程 澄.基于Web Service的綜合物流服務平臺的研究與實現[D].大連:大連海事大學,2012.

[16] 劉家茂.Web Services動態合成及UDDI注冊/查詢技術的研究[D].上海:復旦大學,2005.

猜你喜歡
飛機服務信息
飛機失蹤
環球時報(2022-05-30)2022-05-30 15:16:57
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
“拼座飛機”迎風飛揚
當代陜西(2019年11期)2019-06-24 03:40:28
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
乘坐飛機
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
神奇飛機變變變
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 久草青青在线视频| 欧美自拍另类欧美综合图区| 久久久久夜色精品波多野结衣| 国产精品黑色丝袜的老师| 天堂va亚洲va欧美va国产| 亚洲欧洲日产国码无码av喷潮| 欧美另类图片视频无弹跳第一页| 色吊丝av中文字幕| 青青青国产视频| 91视频日本| a欧美在线| 国产成人欧美| 69视频国产| 波多野衣结在线精品二区| 日韩精品无码免费专网站| 亚洲精品国产精品乱码不卞 | 国产精品偷伦在线观看| 九九九久久国产精品| 久久美女精品| 久久国产亚洲偷自| 欧美在线中文字幕| 18禁黄无遮挡免费动漫网站| 97久久精品人人| 欧美日韩午夜视频在线观看| 亚洲国产精品VA在线看黑人| 少妇被粗大的猛烈进出免费视频| 夜夜操狠狠操| 国产精品亚洲五月天高清| 欧美笫一页| 国产一区自拍视频| 四虎永久免费地址| 免费国产高清精品一区在线| 亚洲综合激情另类专区| 最新亚洲人成无码网站欣赏网 | 久久青草热| 真人免费一级毛片一区二区 | 熟女日韩精品2区| 高清不卡毛片| 国产日产欧美精品| 久久一色本道亚洲| 99热这里只有精品2| 无码中文字幕精品推荐| 在线视频精品一区| 色成人亚洲| 婷婷丁香在线观看| 精品国产毛片| 无码中文AⅤ在线观看| 午夜在线不卡| 国产在线视频导航| 四虎影视国产精品| 精品无码一区二区在线观看| 亚洲欧美日韩精品专区| 久久香蕉国产线看精品| 亚洲日韩精品综合在线一区二区| A级毛片无码久久精品免费| 国产AV毛片| 欧洲亚洲一区| 中文字幕亚洲综久久2021| 国产精品极品美女自在线看免费一区二区| 18黑白丝水手服自慰喷水网站| 免费国产无遮挡又黄又爽| 欧洲亚洲欧美国产日本高清| 美女毛片在线| 色欲色欲久久综合网| 99久久人妻精品免费二区| 欧美亚洲网| 亚洲第一区在线| 国产成人乱无码视频| 不卡视频国产| 欧美一级视频免费| 亚洲欧美成aⅴ人在线观看| 不卡午夜视频| 99无码中文字幕视频| 伊人AV天堂| 99国产在线视频| h视频在线观看网站| 国产在线一区视频| 亚洲人视频在线观看| 中国黄色一级视频| 强乱中文字幕在线播放不卡| 国产又黄又硬又粗| 亚洲一级毛片在线观播放|