• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Spring MVC的大數(shù)據(jù)交易集市平臺(tái)①

    2022-05-10 12:11:48
    關(guān)鍵詞:商城集市交易

    滕 飛

    (武警工程大學(xué) 裝備管理與保障學(xué)院,西安 710086)

    大數(shù)據(jù)(big data),指無(wú)法在一定時(shí)間范圍內(nèi)用常規(guī)軟件工具進(jìn)行捕捉、管理和處理的數(shù)據(jù)集合,是需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量、高增長(zhǎng)率和多樣化的信息資產(chǎn).大數(shù)據(jù)具有以下特點(diǎn):(1) 數(shù)據(jù)體量巨大.可以達(dá)到TB、PB 級(jí)別;(2) 數(shù)據(jù)類型繁多,例如網(wǎng)絡(luò)日志、視頻、圖片、地理位置信息等;(3) 處理速度快;(4) 商業(yè)價(jià)值,只要利用合理的分析手段,可以挖掘出數(shù)據(jù)中潛在的商業(yè)價(jià)值.在大數(shù)據(jù)時(shí)代,如何充分挖掘出蘊(yùn)藏于數(shù)據(jù)資源中的價(jià)值正在成為各國(guó) IT 業(yè)界,學(xué)術(shù)界和政府共同關(guān)注的焦點(diǎn)[1].2015年中國(guó)大數(shù)據(jù)市場(chǎng)規(guī)模達(dá)到33.85 億元,2020年大數(shù)據(jù)交易市場(chǎng)規(guī)模達(dá)到540 億元.大數(shù)據(jù)市場(chǎng)不僅規(guī)模大,并且呈現(xiàn)快速增長(zhǎng)趨勢(shì),為了更好地運(yùn)用數(shù)據(jù)資源,目前具有的大數(shù)據(jù)交易平臺(tái)有日本富士通公司的大數(shù)據(jù)交易集市Data plaza、BDEX、貴陽(yáng)大數(shù)據(jù)交易所、數(shù)據(jù)堂等,開發(fā)大數(shù)據(jù)交易平臺(tái)具有重大意義.為解決大數(shù)據(jù)交易中存在的自身數(shù)據(jù)不出門、數(shù)據(jù)交換受制約等問(wèn)題,并為用戶提供查看樣本數(shù)據(jù)、根據(jù)需求篩選數(shù)據(jù)集內(nèi)容等功能,同時(shí)創(chuàng)客可以利用平臺(tái)購(gòu)買數(shù)據(jù)開發(fā)相關(guān)的應(yīng)用,并發(fā)布在本平臺(tái),本文設(shè)計(jì)了一種大數(shù)據(jù)交易集市平臺(tái),并利用Spring MVC 構(gòu)建后臺(tái)整體架構(gòu)開發(fā)出相應(yīng)的原型系統(tǒng).

    1 系統(tǒng)設(shè)計(jì)

    1.1 系統(tǒng)總體規(guī)劃

    目前的大數(shù)據(jù)交易平臺(tái)主要的模式有:

    (1)提供交易平臺(tái),發(fā)布數(shù)據(jù)目錄,不直接提供數(shù)據(jù).

    (2)發(fā)布數(shù)據(jù)目錄,數(shù)據(jù)提供方上傳數(shù)據(jù)并保存.

    (3)發(fā)布數(shù)據(jù)目錄,發(fā)布銷售數(shù)據(jù).

    (4)提供采集工具,采集公開網(wǎng)頁(yè)數(shù)據(jù),收取服務(wù)費(fèi).

    在現(xiàn)有的交易模式中,私有數(shù)據(jù)所有者出于數(shù)據(jù)安全的考慮,擔(dān)心隱私泄露、數(shù)據(jù)被濫用、數(shù)據(jù)被競(jìng)爭(zhēng)對(duì)手利用,往往不愿意交換自己擁有的數(shù)據(jù).同時(shí)在不同的行業(yè)和專業(yè)領(lǐng)域之間,彼此難以相互了解對(duì)方的數(shù)據(jù),靠數(shù)據(jù)目錄使得數(shù)據(jù)難以發(fā)揮自身的價(jià)值.本文提出的大數(shù)據(jù)交易集市平臺(tái)是基于各方的分布式數(shù)據(jù)和應(yīng)用建立和運(yùn)營(yíng)一個(gè)公信的數(shù)據(jù)和應(yīng)用服務(wù)交易平臺(tái),本系統(tǒng)可以為數(shù)據(jù)機(jī)構(gòu)提供數(shù)據(jù)和應(yīng)用交易樞紐代理,如圖1所示.主要特點(diǎn)如下.

    圖1 數(shù)據(jù)和應(yīng)用交易樞紐圖

    (1)數(shù)據(jù)由提供者存儲(chǔ)和管理:數(shù)據(jù)交易集市不直接管理數(shù)據(jù),誰(shuí)的數(shù)據(jù)誰(shuí)控制,數(shù)據(jù)請(qǐng)求發(fā)生時(shí)由數(shù)據(jù)代理根據(jù)需求從數(shù)據(jù)所有者獲取數(shù)據(jù)交給需求方.數(shù)據(jù)提供者可將數(shù)據(jù)保存自己公司的服務(wù)器上,或保存到本系統(tǒng)提供的Hive 集群中,當(dāng)發(fā)生交易時(shí),系統(tǒng)擁有權(quán)限,通過(guò)相應(yīng)的API 接口獲取服務(wù)器中的數(shù)據(jù)集.

    (2)提供數(shù)據(jù)樣本數(shù)據(jù):用戶可以在數(shù)據(jù)商城查看樣本數(shù)據(jù)集,進(jìn)一步了解數(shù)據(jù)商品.

    (3)篩選數(shù)據(jù)集內(nèi)容功能:用戶可以根據(jù)需求選擇需要的字段,過(guò)濾掉數(shù)據(jù)集中無(wú)價(jià)值的信息.

    (4)數(shù)據(jù)應(yīng)用可開發(fā):提供數(shù)據(jù)應(yīng)用開發(fā)環(huán)境,滿足基于大數(shù)據(jù)的創(chuàng)新應(yīng)用需求.

    大數(shù)據(jù)交易集市原型系統(tǒng)的總體規(guī)劃如圖2所示.

    圖2 系統(tǒng)總體規(guī)劃圖

    使用大數(shù)據(jù)交易集市平臺(tái)的有數(shù)據(jù)機(jī)構(gòu)(數(shù)據(jù)商品的提供方)、創(chuàng)客(應(yīng)用程序的開發(fā)者)、客戶.

    數(shù)據(jù)機(jī)構(gòu)可以將擁有的數(shù)據(jù)發(fā)布到平臺(tái)的數(shù)據(jù)商城中進(jìn)行交易,同時(shí)把數(shù)據(jù)集中部分?jǐn)?shù)據(jù)作為樣本數(shù)據(jù)加入到平臺(tái)的樣本庫(kù)中,創(chuàng)客通過(guò)查看樣本數(shù)據(jù),決定是否購(gòu)買相應(yīng)的數(shù)據(jù)集.數(shù)據(jù)機(jī)構(gòu)也可以利用自身?yè)碛械臄?shù)據(jù)的優(yōu)勢(shì)開發(fā)應(yīng)用程序,開發(fā)出的應(yīng)用程序可以發(fā)布到平臺(tái)的應(yīng)用商城中,客戶通過(guò)應(yīng)用商城購(gòu)買需要的應(yīng)用.

    交易平臺(tái)會(huì)對(duì)數(shù)據(jù)機(jī)構(gòu)提供的數(shù)據(jù)集、應(yīng)用程序進(jìn)行審核,審核通過(guò)后才會(huì)發(fā)布到商城中交易,這樣有效避免數(shù)據(jù)集中存在違法數(shù)據(jù)等問(wèn)題.

    1.2 軟件架構(gòu)設(shè)計(jì)

    大數(shù)據(jù)交易集市平臺(tái)的軟件架構(gòu)設(shè)計(jì)如圖3所示.軟件架構(gòu)從上至下可以分為3 層,分別是SaaS 層[2]、PaaS 層[3]和IaaS 層[4],下面進(jìn)行詳細(xì)的介紹.

    圖3 軟件架構(gòu)圖

    SaaS 層:給用戶提供的能力是使用在云基礎(chǔ)架構(gòu)上運(yùn)行的云服務(wù)提供商的應(yīng)用程序.本系統(tǒng)的SasS 層中包含前臺(tái)、后臺(tái)管理系統(tǒng)、應(yīng)用沙箱.

    PaaS 層:平臺(tái)即服務(wù)作為云計(jì)算的一種,是將基礎(chǔ)設(shè)施平臺(tái)作為一種服務(wù)呈現(xiàn)給用戶的商業(yè)模式,是一種低成本的方案[5].可以讓用戶使用由云服務(wù)提供商支持的編程語(yǔ)言、庫(kù)和開發(fā)工具等開發(fā)應(yīng)用程序,并在相應(yīng)的基礎(chǔ)設(shè)施上部署.本系統(tǒng)的PaaS 層主要包含緩存模塊、文件上傳下載模塊等.

    IaaS 層:它將硬件資源以服務(wù)的方式提供給云平臺(tái)服務(wù)開發(fā)商,這樣就對(duì)后者屏蔽了基礎(chǔ)設(shè)施的異構(gòu)性[6].用戶可以在云服務(wù)提供商提供的基礎(chǔ)設(shè)施上部署和運(yùn)行任何軟件.本系統(tǒng)的IaaS 層主要實(shí)現(xiàn)虛擬化、資源調(diào)度、安全管理等功能,硬件上有X86 集群、小型集群等.

    1.3 主要功能設(shè)計(jì)

    下面介紹大數(shù)據(jù)交易集市主要的兩個(gè)業(yè)務(wù)場(chǎng)景.

    業(yè)務(wù)場(chǎng)景一:數(shù)據(jù)發(fā)布和服務(wù)代理請(qǐng)求數(shù)據(jù),如圖4所示.本系統(tǒng)實(shí)現(xiàn)該功能可以分為以下幾步.

    圖4 數(shù)據(jù)發(fā)布和服務(wù)代理請(qǐng)求調(diào)用數(shù)據(jù)圖

    (1)數(shù)據(jù)交易集市為數(shù)據(jù)機(jī)構(gòu)A和B 部署交易端,包括數(shù)據(jù)應(yīng)用運(yùn)行容器及數(shù)據(jù)審計(jì)網(wǎng)關(guān);

    (2)數(shù)據(jù)機(jī)構(gòu)A和B 開發(fā)可交易數(shù)據(jù)接口;

    (3)數(shù)據(jù)機(jī)構(gòu)A和B 通過(guò)代理注冊(cè)可交易的數(shù)據(jù),并通過(guò)數(shù)據(jù)采集接口提供樣本數(shù)據(jù);

    (4)數(shù)據(jù)請(qǐng)求方通過(guò)注冊(cè)功能進(jìn)行數(shù)據(jù)檢索、察看樣本,找到需求數(shù)據(jù);

    (5)請(qǐng)求方接受數(shù)據(jù)使用條款;

    (6)代理將數(shù)據(jù)提取應(yīng)用部署至數(shù)據(jù)所有者側(cè)A和B,啟動(dòng)應(yīng)用對(duì)數(shù)據(jù)進(jìn)行處理;

    (7)處理結(jié)果經(jīng)A和B 過(guò)濾、審計(jì)后再傳回代理;

    (8)如果有多個(gè)數(shù)據(jù)源返回結(jié)果,代理對(duì)結(jié)果進(jìn)行過(guò)濾、融合處理(過(guò)濾和審計(jì)操作按交易條件可選);

    (9)代理將結(jié)果傳回請(qǐng)求方.

    業(yè)務(wù)場(chǎng)景二:應(yīng)用的測(cè)試發(fā)布、數(shù)據(jù)和應(yīng)用服務(wù)請(qǐng)求及處理,如圖5.本系統(tǒng)實(shí)現(xiàn)該功能步驟如下.

    圖5 應(yīng)用的測(cè)試發(fā)布、數(shù)據(jù)和應(yīng)用服務(wù)請(qǐng)求及處理圖

    (1) 開發(fā)者提出開發(fā)請(qǐng)求;

    (2)開發(fā)者利用樣本數(shù)據(jù)在應(yīng)用沙盒中進(jìn)行數(shù)據(jù)處理功能和安全性測(cè)試;

    (3)數(shù)據(jù)交易集市對(duì)提交的應(yīng)用進(jìn)行安全和可用性測(cè)試后發(fā)布至應(yīng)用商店;

    (4)數(shù)據(jù)交易代理將該應(yīng)用部署至數(shù)據(jù)所有者側(cè)并完成初始化,等待用戶調(diào)用.

    2 相關(guān)技術(shù)

    2.1 Spring MVC

    Spring MVC 框架實(shí)際上是Spring 框架中的Spring Web MVC 模塊[7].其作為Spring Framework的后續(xù)產(chǎn)品,融合在Spring Web Flow 里面.Spring MVC可以提供MVC (model view controller)軟件開發(fā)模式,并且支持IOC和AOP.

    2.2 Hive

    Hive 由Facebook 開發(fā),是一種構(gòu)建于 Hadoop[8]集群之上的數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用,旨在實(shí)現(xiàn) Hadoop 上的數(shù)據(jù)操作與傳統(tǒng) SQL的結(jié)合[9].在Hadoop 中用來(lái)處理結(jié)構(gòu)化數(shù)據(jù).開發(fā)人員直接使用Hadoop 會(huì)面臨學(xué)習(xí)成本太高、項(xiàng)目周期要求太短、MapReduce[10]實(shí)現(xiàn)復(fù)雜查詢邏輯開發(fā)難度大等問(wèn)題.Hive 通過(guò)將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供類 SQL 查詢接口,本質(zhì)是將 SQL 轉(zhuǎn)換為MapReduce 程序,提供快速開發(fā)的能力,有效減少開發(fā)人員的學(xué)習(xí)成本.

    3 系統(tǒng)實(shí)現(xiàn)

    3.1 總體模塊設(shè)計(jì)

    在本文提出的大數(shù)據(jù)交易模式中,由數(shù)據(jù)提供方在大數(shù)據(jù)交易集市平臺(tái)上發(fā)布數(shù)據(jù)及相關(guān)的應(yīng)用,數(shù)據(jù)需求方根據(jù)需要在平臺(tái)購(gòu)買相應(yīng)的數(shù)據(jù)集或服務(wù),如圖6所示.

    圖6 總體實(shí)施方案圖

    數(shù)據(jù)交易集市有前臺(tái)和后臺(tái)管理系統(tǒng)組成.前臺(tái)主要模塊是門戶模塊,該模塊又可以分為多個(gè)子模塊,下面詳細(xì)介紹幾個(gè)主要的功能模塊.

    (1)數(shù)據(jù)商城模塊實(shí)現(xiàn)數(shù)據(jù)商城列表、商品詳情.展示數(shù)據(jù)機(jī)構(gòu)發(fā)布的所有數(shù)據(jù)商品,方便有需求的買家挑選購(gòu)買.

    (2)應(yīng)用商城模塊實(shí)現(xiàn)應(yīng)用商城列表、商品詳情.展示創(chuàng)客發(fā)布的所有應(yīng)用商品,方便有需求的買家挑選購(gòu)買.

    (3)API 商城模塊實(shí)現(xiàn)API 商城列表、商品詳情.展示商家發(fā)布的所有API 商品,方便有需求的買家挑選購(gòu)買.

    (4)個(gè)人中心模塊實(shí)現(xiàn)個(gè)人信息、用戶認(rèn)證、賬戶安全、白名單管理、消息通知等功能.

    (5)購(gòu)物車模塊,用戶購(gòu)物活動(dòng)中的購(gòu)物車,類似在淘寶、京東中的作用.

    (6)買家中心模塊實(shí)現(xiàn)管理已購(gòu)數(shù)據(jù)、已購(gòu)應(yīng)用、已購(gòu)API.

    (7)賣家中心功能有統(tǒng)計(jì)分析、已售數(shù)據(jù)、已售應(yīng)用、已售API、數(shù)據(jù)發(fā)布、應(yīng)用發(fā)布、API 發(fā)布、應(yīng)用鑒權(quán)等.

    (8)數(shù)據(jù)和應(yīng)用發(fā)布,展現(xiàn)賣家發(fā)布的數(shù)據(jù)和應(yīng)用商品情況列表,支持用戶發(fā)布數(shù)據(jù)和應(yīng)用商品,通過(guò)審核以及數(shù)據(jù)機(jī)構(gòu)應(yīng)用鑒權(quán)后,可上架銷售.

    后臺(tái)管理系統(tǒng)由3 部分組成,其中數(shù)據(jù)及應(yīng)用注冊(cè)模塊,主要實(shí)現(xiàn)數(shù)據(jù)集及應(yīng)用的定義及發(fā)布、元數(shù)據(jù)管理、抽樣數(shù)據(jù)管理、數(shù)據(jù)交易記錄等功能.數(shù)據(jù)代理模塊,數(shù)據(jù)代理是數(shù)據(jù)交易的核心功能,主要實(shí)現(xiàn)數(shù)據(jù)應(yīng)用的部署及清理、需求數(shù)據(jù)獲取及返回結(jié)果過(guò)濾或合并等.

    應(yīng)用管理模塊,主要為應(yīng)用開發(fā)者提供開發(fā)環(huán)境及上線應(yīng)用的管理等功能.其中應(yīng)用沙箱主要用于應(yīng)用開發(fā),開發(fā)者可以在應(yīng)用沙箱中利用樣本數(shù)據(jù)進(jìn)行應(yīng)用開發(fā),測(cè)試完成的應(yīng)用可通過(guò)發(fā)布功能在應(yīng)用商店進(jìn)行發(fā)布.

    3.2 開發(fā)環(huán)境

    編程語(yǔ)言:Java;開發(fā)工具:STS (Spring tools suite);操作系統(tǒng):Windows 10;數(shù)據(jù)庫(kù):MySQL 5.7;JDK 版本:JDK 1.8 版本;瀏覽器:Google Chrome;機(jī)器:Lenovo ThinkPad T470;內(nèi)存:4 GB 以上;硬盤:500 GB 以上;集群環(huán)境:Hadoop/Hive 集群是由 5 臺(tái)與單機(jī)服務(wù)器組成.每臺(tái)服務(wù)器上安裝Ubuntu 系統(tǒng),并安裝配置Hadoop-2.7.3和Hive1.2.

    3.3 項(xiàng)目架構(gòu)

    數(shù)據(jù)交易集市平臺(tái)采用前端分離的模式開發(fā),整個(gè)系統(tǒng)有3 個(gè)子項(xiàng)目組成,datamarket (大數(shù)據(jù)交易集市門戶系統(tǒng))、bjmarketportal (大數(shù)據(jù)交易集市后臺(tái)管理系統(tǒng))、datamarketReact (大數(shù)據(jù)交易集市前端頁(yè)面).如圖7,datamarket和bjmarketportal 通過(guò)RESTful API和datamarketReact 頁(yè)面進(jìn)行交互.后臺(tái)使用Java 語(yǔ)言在STS 中開發(fā).前端頁(yè)面系統(tǒng)datamarketReact 采用React 框架[11]開發(fā),使用webpack 前端構(gòu)建工具,采用es2016 新一代JavaScript 編碼模式,頁(yè)面中的圖表展示使用到echarts,前端可以通過(guò)后臺(tái)的RESTful API與后臺(tái)進(jìn)行交互.

    圖7 工程架構(gòu)圖

    后臺(tái)部分使用Spring MVC 框架構(gòu)建項(xiàng)目整體架構(gòu),并采用了經(jīng)典的Web 3 層架構(gòu)模型,MVC 模式把應(yīng)用程序拆分成3 個(gè)部分:模型,視圖和控制器[12].即從高到低次是Controller 層、Service 層和Dao 層,下面進(jìn)行詳細(xì)的介紹.

    本項(xiàng)目在開發(fā)中,通過(guò)在STS 中配置maven-3.5.0實(shí)現(xiàn)對(duì)Jar 包的管理,并在maven[13]的配置文件settings.xml 中完成指定本地倉(cāng)庫(kù)地址,設(shè)置阿里云鏡像,部分代碼如下所示.通過(guò)maven 避免了開發(fā)人員手工添加Jar 包和Jar 包版本沖突的問(wèn)題.

    <mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf></mirror>

    在傳統(tǒng)的單體架構(gòu)[14]中,登錄用戶的信息往往保存在session[15]中,當(dāng)?shù)卿浻脩粼龆嗖粌H會(huì)增加服務(wù)器的壓力,同時(shí)在分布式應(yīng)用上,會(huì)限制負(fù)載均衡器的能力和應(yīng)用的擴(kuò)展性,本項(xiàng)目采用基于JWT (JSON Web token)[16]的認(rèn)證方式,通過(guò)pom.xml 文件實(shí)現(xiàn)在Spring MVC 框架中集成JWT.

    在數(shù)據(jù)庫(kù)的操作方面,MyBatis的優(yōu)勢(shì)在于利用配置文件,不需要在代碼中編寫SQL 語(yǔ)句[17].MyBatis Generator 插件可以根據(jù)表結(jié)構(gòu)生成JavaBean.本系統(tǒng)實(shí)現(xiàn)了Spring MVC和MyBatis、MyBatis Generator的集成.pom.xml 配置文件部分代碼如下:

    <dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>${mybatis.spring.version}</version></dependency>

    大數(shù)據(jù)集往往需求較大的存儲(chǔ)空間,為滿足業(yè)務(wù)需求,本系統(tǒng)使用MySQL 保存用戶信息、商品詳情、樣本數(shù)據(jù)等信息,使用Hive 保存存儲(chǔ)數(shù)據(jù)公司提供的數(shù)據(jù)集.

    在接口測(cè)試方面,實(shí)現(xiàn)了Spring MVC和Swagger框架的集成,Swagger是一個(gè)簡(jiǎn)單又強(qiáng)大的RESTful 風(fēng)格的API 生成文檔工具.pom.xml 配置文件部分代碼如下:

    ?

    項(xiàng)目在Spring MVC 框架中還集成了分頁(yè)插件pagehelper、lombok、Redis 等技術(shù).

    3.4 高訪問(wèn)機(jī)制

    在大數(shù)據(jù)交易集市平臺(tái)中,用戶瀏覽數(shù)據(jù)商城,查看樣本數(shù)據(jù)集,以及查看個(gè)人信息等操作都會(huì)涉及到對(duì)數(shù)據(jù)庫(kù)進(jìn)行I/O 操作.當(dāng)用戶訪問(wèn)量增大,對(duì)數(shù)據(jù)庫(kù)會(huì)進(jìn)行頻繁的讀寫操作,系統(tǒng)在性能上會(huì)出現(xiàn)瓶頸,本文采用NoSQL 技術(shù)解決這一問(wèn)題.Redis[18]是現(xiàn)在最受歡迎的NoSQL 數(shù)據(jù)庫(kù)[19]之一,Redis 包含多種數(shù)據(jù)結(jié)構(gòu)、支持網(wǎng)絡(luò)、基于內(nèi)存、可選持久性的鍵值對(duì)存儲(chǔ)數(shù)據(jù)庫(kù).本文采用Redis 實(shí)現(xiàn)系統(tǒng)的高訪問(wèn)機(jī)制,當(dāng)用戶從系統(tǒng)獲取數(shù)據(jù)時(shí),系統(tǒng)會(huì)首先從Redis 中查找,如果沒(méi)有找到,再?gòu)臄?shù)據(jù)庫(kù)中讀取,有效提高系統(tǒng)讀取數(shù)據(jù)的性能,緩解數(shù)據(jù)庫(kù)訪問(wèn)壓力,過(guò)程如圖8所示.

    圖8 Redis 緩存機(jī)制

    3.5 基于RESTful的API 接口設(shè)計(jì)

    3.5.1 RESTful API 介紹

    API (application programming interface,應(yīng)用程序編程接口)[20]用來(lái)提供應(yīng)用程序與開發(fā)人員基于某軟件得以訪問(wèn)的一組例程,而開發(fā)人員無(wú)需關(guān)心其內(nèi)部工作機(jī)制的細(xì)節(jié).在REST (representational state transfer)中每個(gè)資源由URI 標(biāo)識(shí),RESTful[21]是一種架構(gòu)的規(guī)范與約束,通過(guò)POST,GET,PUT,DELETE 操作對(duì)資源進(jìn)行CRUD[22]操作.

    3.5.2 權(quán)限驗(yàn)證流程

    系統(tǒng)提供的所有API 必須通過(guò)認(rèn)證鑒權(quán)才可使用.權(quán)限驗(yàn)證流程如圖9所示.用戶登錄系統(tǒng)時(shí),前端會(huì)向后端傳入登錄驗(yàn)證信息,如表1所示.

    表1 用戶登錄信息表

    圖9 權(quán)限驗(yàn)證流程圖

    驗(yàn)證成功后,服務(wù)器端會(huì)生成Token.之后將Token和該用戶的權(quán)限保存到Redis 中,如表2所示.

    表2 Token 信息表

    本系統(tǒng)的Token 由隨機(jī)字符串、用戶名稱、時(shí)間戳拼接后md5 摘要生成,60 min 過(guò)期.

    3.5.3 接口設(shè)計(jì)

    接口數(shù)據(jù)傳輸采用HTTP 協(xié)議,提交和返回?cái)?shù)據(jù)都為JSON 格式[23],并統(tǒng)一采用UTF-8 字符編碼.Spring MVC 框架中使用@RequestBody 注解把前端發(fā)送的JSON 字符串轉(zhuǎn)為Java 對(duì)象,使用@ResponseBody注解把后臺(tái)Java 對(duì)象轉(zhuǎn)換JSON 字符串.在返回?cái)?shù)據(jù)方面,失敗時(shí)re_message 字段返回失敗原因.下面通過(guò)本系統(tǒng)的后臺(tái)管理bjmarketportal 項(xiàng)目中數(shù)據(jù)商品管理模塊詳細(xì)介紹API 接口的設(shè)計(jì).數(shù)據(jù)商品管理模塊主要實(shí)現(xiàn)數(shù)據(jù)商品信息維護(hù),數(shù)據(jù)商品審核、發(fā)布等功能.數(shù)據(jù)商品管信息管理模塊的API 接口設(shè)計(jì)如表3.

    表3 數(shù)據(jù)商品管理模塊接口

    下面重點(diǎn)介紹其中的根據(jù)id 查詢數(shù)據(jù)商品詳情,接口鏈接地址:/api/v1/ datacommodity{id},id是用戶從前端提交的請(qǐng)求參數(shù),請(qǐng)求方式是GET 類型,后端根據(jù)商品的id 從數(shù)據(jù)庫(kù)中查找商品詳情信息,如表4.

    表4 數(shù)據(jù)商品表

    查詢結(jié)果會(huì)以成JSON 格式發(fā)送到前端頁(yè)面,當(dāng)查詢成功時(shí)返回結(jié)果如下所示:

    {“data_commodity_id”:12,“data_set_commodity_name”:全國(guó)天氣數(shù)據(jù)集,“data_charge_type_code”:“2”,“img”:“nofile”,“file”:“nofile”,“data_charge_price”:“950”,“data_desc1”:“全國(guó)天氣數(shù)據(jù)集簡(jiǎn)介”,“data_desc2”:“可以按照日期和城市查詢天氣數(shù)據(jù)”,“data_desc3”:“天氣預(yù)報(bào),應(yīng)急救災(zāi)”,“data_desc4”:“數(shù)據(jù)分析,機(jī)器學(xué)習(xí)”,“example_is_download”:“1”,“data_type”:“txt 文本”,“data_single”:“1”,“sale_counts”:150}

    后臺(tái)執(zhí)行成功,將數(shù)據(jù)添加到數(shù)據(jù)庫(kù)中,如果執(zhí)行失敗,會(huì)將失敗信息以JSON 格式發(fā)送到前端,如下:

    ?

    3.6 數(shù)據(jù)集購(gòu)買

    數(shù)據(jù)集購(gòu)買功能位于datamarket 項(xiàng)目的數(shù)據(jù)商城模塊中,數(shù)據(jù)商品可以按照行業(yè)分為政府、醫(yī)療、金融、電商、汽車、房地產(chǎn)、教育、旅游等.大數(shù)據(jù)具有量大、價(jià)值密度低的特點(diǎn),用戶在使用數(shù)據(jù)集進(jìn)行數(shù)據(jù)分析、開發(fā)應(yīng)用軟件時(shí),往往不會(huì)使用到數(shù)據(jù)集中的所有數(shù)據(jù),需要清除掉無(wú)價(jià)值的信息,本系統(tǒng)在購(gòu)買數(shù)據(jù)商品功能基礎(chǔ)上,提供查看樣本數(shù)據(jù)、按照字段篩選數(shù)據(jù)等功能.

    數(shù)據(jù)機(jī)構(gòu)首先上傳數(shù)據(jù)商品的詳情信息和樣本數(shù)據(jù),后臺(tái)管理員審核通過(guò)后,會(huì)將數(shù)據(jù)商品發(fā)布到數(shù)據(jù)商城中.創(chuàng)客根據(jù)自身需求,查看數(shù)據(jù)商品詳情和樣本數(shù)據(jù),選擇合適的數(shù)據(jù)商品,完成支付后,可以下載相應(yīng)的數(shù)據(jù)集,并且可以使用數(shù)據(jù)商城提供的數(shù)據(jù)篩選功能去除數(shù)據(jù)集中無(wú)價(jià)值的信息.下面通過(guò)數(shù)據(jù)機(jī)構(gòu)A 提供的全國(guó)天氣數(shù)據(jù)集National_weather_data 詳細(xì)介紹數(shù)據(jù)商品購(gòu)買功能.

    全國(guó)天氣數(shù)據(jù)集National_weather_data 記錄了2000年到2018年全國(guó)各個(gè)城市每一天的天氣數(shù)據(jù),每條記錄字段包含:城市、日期、天氣狀況、最高氣溫、最低氣溫、風(fēng)力風(fēng)向,如表5所示.

    表5 全國(guó)天氣數(shù)據(jù)樣例表

    數(shù)據(jù)機(jī)構(gòu)A 首先上傳該數(shù)據(jù)集的詳情信息和對(duì)應(yīng)的樣本數(shù)據(jù).數(shù)據(jù)機(jī)構(gòu)首先創(chuàng)建樣本數(shù)據(jù)集對(duì)應(yīng)的表結(jié)構(gòu),填寫每個(gè)字段名稱、字段的數(shù)據(jù)類型等,如圖10.

    圖10 設(shè)置樣本數(shù)據(jù)集

    數(shù)據(jù)機(jī)構(gòu)A 提交信息后,后臺(tái)會(huì)在MySQL 數(shù)據(jù)庫(kù)中創(chuàng)建對(duì)應(yīng)的表,使用MyBatis 框架實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建表結(jié)構(gòu),把樣本數(shù)據(jù)名稱作為表名,字段名稱和數(shù)據(jù)類型作為表的屬性和相應(yīng)的數(shù)據(jù)類型.之后數(shù)據(jù)機(jī)構(gòu)A 在系統(tǒng)中填寫樣本數(shù)據(jù)表記錄,樣本數(shù)據(jù)表的記錄行數(shù)一般在10-50 行之間,部分代碼如下:

    ?

    系統(tǒng)管理員會(huì)對(duì)數(shù)據(jù)商品的介紹信息和樣本數(shù)據(jù)內(nèi)容進(jìn)行審核,檢查數(shù)據(jù)商品是否符合商城的規(guī)定,有無(wú)違法信息,審核通過(guò)后授權(quán)數(shù)據(jù)機(jī)構(gòu)向Hive 集群上傳數(shù)據(jù)商品.

    為確保數(shù)據(jù)提供者的數(shù)據(jù)安全性,系統(tǒng)會(huì)向數(shù)據(jù)提供者提供Hive 集群資源,數(shù)據(jù)提供者可以上傳、修改、查看、刪除數(shù)據(jù)集,數(shù)據(jù)機(jī)構(gòu)和客戶達(dá)成購(gòu)買協(xié)議,并完成交易后,數(shù)據(jù)交易集市才可以獲得相應(yīng)數(shù)據(jù)集的獲取權(quán)限,數(shù)據(jù)代理根據(jù)需求從數(shù)據(jù)所有者獲取數(shù)據(jù)交給客戶.下面通過(guò)national_weather_data 數(shù)據(jù)集進(jìn)行詳細(xì)介紹.

    數(shù)據(jù)機(jī)構(gòu)A 將數(shù)據(jù)集中的數(shù)據(jù)保存到txt 文件中,命名為national_weather_data.txt,文件中每一行代表一條數(shù)據(jù)記錄,每條數(shù)據(jù)記錄中的一列代表一個(gè)屬性值,每個(gè)屬性之間用英文逗號(hào)隔開.當(dāng)數(shù)據(jù)商品詳情和樣本數(shù)據(jù)被后臺(tái)管理員審核通過(guò)后,會(huì)通過(guò)數(shù)據(jù)商城的API 接口將national_weather_data.txt 中的數(shù)據(jù)導(dǎo)入到Hive 集群中管理,過(guò)程如圖11所示.

    圖11 數(shù)據(jù)機(jī)構(gòu)上傳數(shù)據(jù)商品圖

    Hive 集群保存數(shù)據(jù)集的過(guò)程如下:

    (1)表名以及表中的字段名稱和樣本數(shù)據(jù)表national_weather_data 相對(duì)應(yīng),MySQL 中的字段數(shù)據(jù)類型,VARCHAR和FLOAT 分別對(duì)應(yīng)Hive 中的string和int 類型.

    (2)為保證數(shù)據(jù)集內(nèi)容的充足性,系統(tǒng)輸出審計(jì)功能會(huì)檢查txt 文件的行數(shù),當(dāng)行數(shù)小于100 行時(shí),停止上傳數(shù)據(jù),并反饋數(shù)據(jù)機(jī)構(gòu)數(shù)據(jù)量過(guò)小,不符合要求.同時(shí)隨機(jī)抽取其中5 行記錄供管理員查看,審查其內(nèi)容是否符合數(shù)據(jù)商品的詳情描述,部分代碼如下:

    if [${BEFOR_VALUE}-lt 100 ];then echo "`date`-FAILURE count(*)=$BEFOR_VALUE"echo "FAILURE"

    (3)數(shù)據(jù)機(jī)構(gòu)向管理員提供Hive 表的分區(qū)字段,national_weather_data 表的分區(qū)字段是year和city.

    (4)后臺(tái)程序生成建表語(yǔ)句,如下所示,在Hive 集群中建立表結(jié)構(gòu).

    create table national_weather_data(year string,date string,city string,maximum_temperature int,minimum_temperature int,weather string,wind_direction string,wind_rating int,)PARTITIONED BY (`year` string,`city` string)ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' NULL DEFINED AS ''STORED AS TEXTFILE;

    (5)執(zhí)行導(dǎo)數(shù)腳本,把txt 文件中保存的數(shù)據(jù)導(dǎo)入到Hive 集群中,執(zhí)行腳本時(shí)需要傳遞3 個(gè)參數(shù),table_name表名,year年份,city 城市.

    LOAD DATA LOCAL INPATH '${FILE_NAME}' OVERWRITE INTO TABLE ${table_name} partition (year='${YEAR}',city='${CITY }');"

    (6)數(shù)據(jù)集上傳結(jié)束后,為確保數(shù)據(jù)集上傳成功,系統(tǒng)審計(jì)功能會(huì)檢查上傳到Hive 中的數(shù)據(jù)集行數(shù),如果小于txt 文件的行數(shù),則向數(shù)據(jù)機(jī)構(gòu)反饋,數(shù)據(jù)上傳失敗.部分代碼如下:

    echo "hive table rows:$AFTER_VALUE"if [$AFTER_VALUE-ne $BEFOR_VALUE ];then echo "`date`-FAILURE:AFTER_VALUE(*)=$AFTER_VALUE<>BEFOR_VALUE(*)=$BEFOR_VALUE "echo "FAILURE"current_2=`date+%s`current_dura=`expr $current_2-$current_1`

    數(shù)據(jù)商城提供數(shù)據(jù)集的信息篩選功能,客戶可以根據(jù)數(shù)據(jù)集的字段選擇需要的數(shù)據(jù),去除無(wú)用的數(shù)據(jù)項(xiàng),如圖12所示.后臺(tái)系統(tǒng)會(huì)根據(jù)用戶選擇的字段生成HQL[24]語(yǔ)句,從Hive 集群中將相應(yīng)的數(shù)據(jù)導(dǎo)出到txt 文件中,之后用戶可以下載相應(yīng)的txt 文件.在商品支付方面,創(chuàng)客可以通過(guò)支付寶、微信、網(wǎng)銀等手段完成支付,這個(gè)過(guò)程類似淘寶、京東等網(wǎng)站商城.

    圖12 選擇需要的字段

    3.7 模塊企業(yè)注冊(cè)功能

    用戶注冊(cè)如果想要成為買家、賣家、創(chuàng)客等,就需要進(jìn)一步認(rèn)證.認(rèn)證通過(guò)后,用戶就擁有購(gòu)買、使用商品的權(quán)限,可以發(fā)布、管理商品,甚至成為一名平臺(tái)創(chuàng)客,申請(qǐng)創(chuàng)客空間資源,開發(fā)、測(cè)試、運(yùn)行應(yīng)用.認(rèn)證分為個(gè)人認(rèn)證和企業(yè)認(rèn)證.

    企業(yè)認(rèn)證需要用戶提供公司名稱、地址、三證合一號(hào)碼、營(yíng)業(yè)執(zhí)照副本,以及運(yùn)營(yíng)者姓名、身份證號(hào)、聯(lián)系方式、持證照正反面等信息,如圖13所示,如確認(rèn)用戶信息真實(shí)有效,提出申請(qǐng)后7 個(gè)工作日內(nèi)就會(huì)得到回復(fù).如被駁回,按照駁回原因,重新修改提交.

    圖13 企業(yè)認(rèn)證

    下面詳細(xì)介紹企業(yè)認(rèn)證功能的實(shí)現(xiàn).用戶點(diǎn)擊提交按鈕后,前端會(huì)調(diào)用bjmarketportal 項(xiàng)目中的企業(yè)認(rèn)證接口,接口地址是/api/v1/enterprisecertification,訪問(wèn)方式是POST,表單中的數(shù)據(jù)會(huì)以JSON 格式發(fā)送到后臺(tái).bjmarketportal 中實(shí)現(xiàn)企業(yè)認(rèn)證功能的代碼由Controller層、Service 層、Dao 層、Pojo (plain ordinary Java object)、Vo (value object)等幾部分組成,下面詳細(xì)介紹后臺(tái)企業(yè)認(rèn)證功能的實(shí)現(xiàn).

    Pojo:Pojo 類可方便開發(fā)人員使用數(shù)據(jù)庫(kù)中的數(shù)據(jù)表.通過(guò)MyBatis Generator 插件從MySQL 數(shù)據(jù)庫(kù)中生成企業(yè)認(rèn)證信息表對(duì)應(yīng)的Pojo 類—CorporateInformation.

    Vo:常用于業(yè)務(wù)層之間的數(shù)據(jù)傳遞,可以用于封裝從頁(yè)面表單提交的數(shù)據(jù).該模塊中Enterprise CertificationVo類用于封裝企業(yè)認(rèn)證表單數(shù)據(jù).

    Controller 層:接收客戶端的請(qǐng)求,然后調(diào)用Service層業(yè)務(wù)邏輯,獲取到數(shù)據(jù),傳遞數(shù)據(jù)給視圖.Corporate Information Controller 類對(duì)應(yīng)該模塊Controller 層代碼.類中使用@Autowired 注解實(shí)現(xiàn)Service 層Corporate Information Service 對(duì)象的自動(dòng)裝配;并創(chuàng)建enterprise Certification 方法實(shí)現(xiàn)企業(yè)認(rèn)證功能,通過(guò)@Request Mapping 注解,設(shè)置該方法的訪問(wèn)路徑/api/v1/user Center/enterprisecertification,訪問(wèn)方式是POST.

    Service 層:用于實(shí)現(xiàn)模塊中的業(yè)務(wù)邏輯Corporate-InformationService 類對(duì)應(yīng)該模塊的Service 層代碼,通過(guò)@Service 注解聲明其是一個(gè)Service 類,并自動(dòng)注冊(cè)到Spring 容器中;通過(guò)@Autowired 獲取Dao 層CorporateInformationMapper 對(duì)象;certification 方法實(shí)現(xiàn)企業(yè)認(rèn)證功能.

    Dao 層:負(fù)責(zé)模塊中數(shù)據(jù)庫(kù)操作,CorporateInformationMapper 類對(duì)應(yīng)該模塊中的Dao 層代碼,采用MyBatis 框架實(shí)現(xiàn),通過(guò)@Mapper 注解其是一個(gè)Dao層類,并交給Spring 容器管理,同時(shí)省去了mapper 映射文件的書寫.該模塊部分代碼如下:

    @Controller@RequestMapping(value="/mail/userCenter")public class CorporateInformationController extends BaseController<Object>{@Autowired private SandboxieService sandboxieService;@Autowired private CorporateInformationService corporateInformationService;@Autowired private DataShopService dataShopService;@RequestMapping(value="enterprisecertification",method=RequestMethod.POST)@ResponseBody public String enterpriseCertification(EnterpriseCertificationVo enterpriseCertificationVo,HttpServletResponse response) throws Exception {String enterpriseName=enterpriseCertificationVo.getEnterpriseName();

    if (corporateInformationService.isEnterprise(enterpriseName)) {…}…}

    4 結(jié)論與展望

    本文設(shè)計(jì)的大數(shù)據(jù)交易集市平臺(tái),通過(guò)向數(shù)據(jù)機(jī)構(gòu)提供公用的Hive 集群資源,實(shí)現(xiàn)數(shù)據(jù)交易集市不存儲(chǔ)數(shù)據(jù),數(shù)據(jù)由提供者存儲(chǔ)和管理,在商城發(fā)布數(shù)據(jù)商品的詳情信息、樣例數(shù)據(jù)供客戶查看,由數(shù)據(jù)代理獲取數(shù)據(jù)交給需求方,有效解決了數(shù)據(jù)交易中私有數(shù)據(jù)持有者擔(dān)心數(shù)據(jù)泄露,不愿意分享數(shù)據(jù)的問(wèn)題.同時(shí)設(shè)計(jì)出數(shù)據(jù)發(fā)布和服務(wù)代理請(qǐng)求數(shù)據(jù)、應(yīng)用的測(cè)試發(fā)布、應(yīng)用服務(wù)請(qǐng)求業(yè)務(wù)流程.并在此基礎(chǔ)上使用Spring MVC 框架,并集成了MyBatis、Swagger 等技術(shù)開發(fā)實(shí)現(xiàn)了大數(shù)據(jù)交易集市平臺(tái),利用Redis 解決系統(tǒng)在高并發(fā)下中性能下降問(wèn)題,采用基于RESTful 風(fēng)格的API 接口設(shè)計(jì),最后通過(guò)數(shù)據(jù)集購(gòu)買功能和企業(yè)認(rèn)證功能詳細(xì)介紹了項(xiàng)目的實(shí)現(xiàn),并且系統(tǒng)具有前后端分離、低耦合高內(nèi)聚以及易擴(kuò)展性.

    猜你喜歡
    商城集市交易
    熱鬧的集市
    探訪于山“相親集市”
    海峽姐妹(2018年12期)2018-12-23 02:39:20
    商城
    汽車之友(2017年6期)2017-04-26 10:08:21
    悅居商城
    悅居商城shop
    51,商城
    交易流轉(zhuǎn)應(yīng)有新規(guī)
    大宗交易
    熱鬧的集市
    《吃飯的交易》
    啦啦啦视频在线资源免费观看| 日韩欧美精品免费久久| 看免费成人av毛片| 国产精品麻豆人妻色哟哟久久| 青春草国产在线视频| 国产日韩欧美视频二区| 国产成人aa在线观看| 国产亚洲精品久久久com| 久久午夜综合久久蜜桃| 国产伦理片在线播放av一区| 少妇精品久久久久久久| 亚洲三级黄色毛片| 两个人免费观看高清视频 | 国内揄拍国产精品人妻在线| 婷婷色综合大香蕉| 国产欧美日韩综合在线一区二区 | 成人无遮挡网站| 成年人午夜在线观看视频| 能在线免费看毛片的网站| 国产精品嫩草影院av在线观看| 国产精品一区www在线观看| 久久精品国产亚洲网站| 精品人妻熟女av久视频| 亚洲欧美一区二区三区国产| 五月天丁香电影| 狂野欧美白嫩少妇大欣赏| 国产黄色视频一区二区在线观看| 99久久精品国产国产毛片| 免费黄色在线免费观看| 日韩一区二区三区影片| 丝袜在线中文字幕| 老熟女久久久| 精品一区二区三卡| 少妇的逼水好多| 国产成人一区二区在线| 免费看不卡的av| 伦精品一区二区三区| 不卡视频在线观看欧美| 成年人免费黄色播放视频 | 午夜av观看不卡| 只有这里有精品99| 国产真实伦视频高清在线观看| 最新的欧美精品一区二区| 久久免费观看电影| 国产探花极品一区二区| www.av在线官网国产| av有码第一页| 97在线人人人人妻| 国产一区二区在线观看av| 两个人的视频大全免费| 一区在线观看完整版| 精品一区二区免费观看| 国产精品免费大片| 精品卡一卡二卡四卡免费| 男人爽女人下面视频在线观看| 国产精品99久久99久久久不卡 | 欧美精品一区二区大全| 国产永久视频网站| 一区二区三区精品91| 日日啪夜夜撸| 国产极品天堂在线| 国产一区二区在线观看av| 大片电影免费在线观看免费| 精品少妇久久久久久888优播| 色婷婷久久久亚洲欧美| 成人二区视频| 久久久a久久爽久久v久久| 国产色爽女视频免费观看| av视频免费观看在线观看| 欧美日本中文国产一区发布| 制服丝袜香蕉在线| 国产真实伦视频高清在线观看| 亚洲伊人久久精品综合| 精品一区二区免费观看| 欧美另类一区| 嫩草影院入口| 国产 精品1| 亚洲人成网站在线播| 男女无遮挡免费网站观看| 日韩欧美一区视频在线观看 | 成人影院久久| 日韩成人av中文字幕在线观看| 丰满少妇做爰视频| 久久精品国产亚洲网站| 在线观看人妻少妇| 亚洲精品一二三| h日本视频在线播放| a级毛片在线看网站| 精品一区二区免费观看| 美女xxoo啪啪120秒动态图| 亚洲精品国产av成人精品| 国产视频内射| 国产精品一二三区在线看| 丁香六月天网| 国产午夜精品一二区理论片| 国产熟女欧美一区二区| 国产精品国产三级专区第一集| 99久久精品热视频| 一级二级三级毛片免费看| 久久97久久精品| 丰满少妇做爰视频| 国产精品蜜桃在线观看| 啦啦啦啦在线视频资源| 日韩一区二区三区影片| 亚洲人成网站在线播| 精品一区二区三卡| 波野结衣二区三区在线| 成人黄色视频免费在线看| 一级a做视频免费观看| 在线观看美女被高潮喷水网站| 一级毛片我不卡| 久久精品国产a三级三级三级| 欧美高清成人免费视频www| 久久99一区二区三区| 欧美日韩精品成人综合77777| 18禁裸乳无遮挡动漫免费视频| 国产成人免费无遮挡视频| 国产中年淑女户外野战色| 精品亚洲成a人片在线观看| 精品一区二区三卡| 你懂的网址亚洲精品在线观看| 国产 一区精品| 亚洲av电影在线观看一区二区三区| 国内精品宾馆在线| 在线亚洲精品国产二区图片欧美 | 热re99久久精品国产66热6| 久久久久久久久久久丰满| 日韩在线高清观看一区二区三区| 免费观看在线日韩| 看非洲黑人一级黄片| 国产精品免费大片| 18禁在线无遮挡免费观看视频| 少妇熟女欧美另类| av在线老鸭窝| 国产毛片在线视频| 熟女电影av网| 亚洲av欧美aⅴ国产| 亚洲怡红院男人天堂| 日日爽夜夜爽网站| 日本黄色片子视频| 极品少妇高潮喷水抽搐| 国产精品99久久久久久久久| 寂寞人妻少妇视频99o| 视频区图区小说| 丰满乱子伦码专区| 好男人视频免费观看在线| 人妻少妇偷人精品九色| 精品亚洲乱码少妇综合久久| 欧美+日韩+精品| 日韩欧美 国产精品| 亚洲美女视频黄频| 一级毛片久久久久久久久女| 久久 成人 亚洲| 2021少妇久久久久久久久久久| 日日啪夜夜爽| 国产精品99久久久久久久久| 亚洲国产精品一区二区三区在线| 日韩精品有码人妻一区| 丰满乱子伦码专区| 国产在视频线精品| 国产亚洲一区二区精品| 国产日韩欧美在线精品| 国产黄片美女视频| 精品人妻偷拍中文字幕| av又黄又爽大尺度在线免费看| 免费观看性生交大片5| 国产精品99久久99久久久不卡 | 国产精品嫩草影院av在线观看| 丝袜喷水一区| 精品酒店卫生间| 欧美日韩视频精品一区| 午夜久久久在线观看| 美女内射精品一级片tv| 妹子高潮喷水视频| 亚洲av成人精品一区久久| 久久久久久久久久人人人人人人| 美女主播在线视频| 国产高清国产精品国产三级| 成年人午夜在线观看视频| 高清在线视频一区二区三区| 人妻制服诱惑在线中文字幕| 自拍偷自拍亚洲精品老妇| 啦啦啦在线观看免费高清www| 好男人视频免费观看在线| 中文字幕免费在线视频6| 看免费成人av毛片| 亚洲欧美精品专区久久| 夫妻午夜视频| 一级毛片我不卡| 欧美成人午夜免费资源| 三级经典国产精品| 一区二区av电影网| 日本av手机在线免费观看| 国产中年淑女户外野战色| kizo精华| 最新的欧美精品一区二区| 少妇的逼好多水| 欧美xxxx性猛交bbbb| 日韩成人伦理影院| 亚洲真实伦在线观看| 一级毛片电影观看| 久久精品夜色国产| av专区在线播放| 成年美女黄网站色视频大全免费 | 视频区图区小说| 国产av国产精品国产| 国产69精品久久久久777片| 精品视频人人做人人爽| 九九在线视频观看精品| 26uuu在线亚洲综合色| 亚洲国产精品一区三区| 最近2019中文字幕mv第一页| av在线老鸭窝| 亚洲电影在线观看av| 亚洲av男天堂| 王馨瑶露胸无遮挡在线观看| 亚洲成人一二三区av| 亚洲在久久综合| 国产真实伦视频高清在线观看| 亚洲精品日韩av片在线观看| 欧美国产精品一级二级三级 | 22中文网久久字幕| 亚洲一级一片aⅴ在线观看| 欧美日韩国产mv在线观看视频| av在线app专区| 亚洲成色77777| 日韩精品有码人妻一区| 大片免费播放器 马上看| 丁香六月天网| 中文字幕人妻丝袜制服| 在线观看三级黄色| 国产精品熟女久久久久浪| 国产高清三级在线| 国产有黄有色有爽视频| 亚洲天堂av无毛| 啦啦啦视频在线资源免费观看| 亚洲精品国产av蜜桃| 黄色配什么色好看| 哪个播放器可以免费观看大片| 精品少妇久久久久久888优播| 国产爽快片一区二区三区| 久久久久久久久久久免费av| 草草在线视频免费看| 亚洲婷婷狠狠爱综合网| 在线免费观看不下载黄p国产| 欧美+日韩+精品| 街头女战士在线观看网站| 啦啦啦中文免费视频观看日本| 黑人巨大精品欧美一区二区蜜桃 | 国产片特级美女逼逼视频| 久热这里只有精品99| 成人亚洲精品一区在线观看| 精品一区二区免费观看| 精品久久久精品久久久| 中文字幕人妻熟人妻熟丝袜美| 成年美女黄网站色视频大全免费 | 九色成人免费人妻av| 国产精品一二三区在线看| 成人免费观看视频高清| 丰满人妻一区二区三区视频av| 亚洲精品国产av成人精品| 欧美97在线视频| 日韩av在线免费看完整版不卡| 亚洲精品国产成人久久av| 丰满饥渴人妻一区二区三| 国产精品99久久久久久久久| 一区二区三区精品91| 91久久精品国产一区二区成人| 亚洲人与动物交配视频| 麻豆成人av视频| 美女主播在线视频| 亚洲高清免费不卡视频| 十八禁高潮呻吟视频 | 婷婷色综合大香蕉| 亚洲成人手机| 久久久a久久爽久久v久久| 少妇高潮的动态图| 99热国产这里只有精品6| 午夜福利视频精品| 久久精品国产a三级三级三级| 91久久精品电影网| 久久人人爽av亚洲精品天堂| 狠狠精品人妻久久久久久综合| 国产精品一区二区在线观看99| 国产亚洲欧美精品永久| 在线免费观看不下载黄p国产| 另类亚洲欧美激情| 婷婷色综合大香蕉| 99久久精品国产国产毛片| 免费少妇av软件| 欧美亚洲 丝袜 人妻 在线| 91在线精品国自产拍蜜月| av线在线观看网站| 国产免费一级a男人的天堂| 男女国产视频网站| 久热久热在线精品观看| 少妇高潮的动态图| av免费观看日本| 亚洲国产精品一区三区| 三上悠亚av全集在线观看 | 丝袜脚勾引网站| 国产成人一区二区在线| 一级毛片 在线播放| 韩国av在线不卡| 久久女婷五月综合色啪小说| 2018国产大陆天天弄谢| 亚洲精品成人av观看孕妇| 欧美人与善性xxx| 国产成人免费观看mmmm| 曰老女人黄片| 人妻一区二区av| 亚洲一级一片aⅴ在线观看| 国产 精品1| 欧美激情国产日韩精品一区| 91久久精品电影网| 观看美女的网站| 成人综合一区亚洲| 只有这里有精品99| av国产久精品久网站免费入址| 久久久久久久亚洲中文字幕| 国产精品国产三级专区第一集| 国产成人免费无遮挡视频| 亚洲国产毛片av蜜桃av| 亚洲精品乱码久久久久久按摩| 久久久精品94久久精品| 亚洲精品乱码久久久v下载方式| 我的老师免费观看完整版| 偷拍熟女少妇极品色| 中文在线观看免费www的网站| av网站免费在线观看视频| 国精品久久久久久国模美| 欧美一级a爱片免费观看看| 亚洲精品,欧美精品| 午夜福利视频精品| av专区在线播放| 亚洲精品视频女| 王馨瑶露胸无遮挡在线观看| 蜜桃在线观看..| 我的女老师完整版在线观看| 国产淫片久久久久久久久| 欧美激情国产日韩精品一区| 亚洲av.av天堂| 国产淫片久久久久久久久| 精品人妻熟女毛片av久久网站| 色吧在线观看| 三级国产精品片| 高清午夜精品一区二区三区| av一本久久久久| 欧美成人午夜免费资源| 在线观看av片永久免费下载| 丰满少妇做爰视频| 国产精品人妻久久久久久| 国产成人免费观看mmmm| 99热全是精品| 成人亚洲欧美一区二区av| 日韩av免费高清视频| 免费观看的影片在线观看| 国产高清三级在线| 男的添女的下面高潮视频| 在线观看免费高清a一片| 黄色欧美视频在线观看| 国产精品成人在线| 亚洲婷婷狠狠爱综合网| 久热这里只有精品99| 女人精品久久久久毛片| 99热全是精品| 成人亚洲欧美一区二区av| 久久午夜综合久久蜜桃| 国产乱人偷精品视频| 亚洲av国产av综合av卡| 午夜老司机福利剧场| 精品人妻熟女毛片av久久网站| 爱豆传媒免费全集在线观看| 99热6这里只有精品| 精品国产一区二区三区久久久樱花| 亚洲欧洲精品一区二区精品久久久 | 青春草亚洲视频在线观看| 久久久久久久国产电影| 久久99一区二区三区| 日本爱情动作片www.在线观看| 精品一品国产午夜福利视频| 草草在线视频免费看| 三级国产精品片| 亚洲国产精品一区二区三区在线| 少妇猛男粗大的猛烈进出视频| 秋霞伦理黄片| 一区二区三区精品91| 在线 av 中文字幕| 久久精品国产亚洲av涩爱| 又粗又硬又长又爽又黄的视频| 黑人巨大精品欧美一区二区蜜桃 | 蜜桃久久精品国产亚洲av| 国产永久视频网站| 国产成人a∨麻豆精品| 国产又色又爽无遮挡免| 丰满人妻一区二区三区视频av| 国产精品伦人一区二区| 91久久精品电影网| 成人无遮挡网站| 看免费成人av毛片| 精品一区在线观看国产| 在线观看人妻少妇| 成人黄色视频免费在线看| 少妇人妻精品综合一区二区| 成人亚洲欧美一区二区av| 午夜免费鲁丝| 亚洲丝袜综合中文字幕| 国产成人91sexporn| 嘟嘟电影网在线观看| 纵有疾风起免费观看全集完整版| 啦啦啦中文免费视频观看日本| 91精品一卡2卡3卡4卡| 亚州av有码| 精品99又大又爽又粗少妇毛片| 国产精品国产三级专区第一集| 99久久精品国产国产毛片| 女人久久www免费人成看片| 男女边吃奶边做爰视频| 国产乱人偷精品视频| 观看av在线不卡| 久久6这里有精品| 久久久精品免费免费高清| 99热网站在线观看| 亚洲精品中文字幕在线视频 | 国产精品女同一区二区软件| 亚洲第一av免费看| 亚洲美女视频黄频| 色视频www国产| av网站免费在线观看视频| 国产在视频线精品| 女人久久www免费人成看片| 国产亚洲最大av| 99热这里只有是精品50| 国产极品粉嫩免费观看在线 | 热re99久久国产66热| 亚洲性久久影院| 日韩强制内射视频| 精品视频人人做人人爽| 久久久久久久久大av| 一级av片app| 91午夜精品亚洲一区二区三区| 最近手机中文字幕大全| 女性生殖器流出的白浆| 久久影院123| 夜夜爽夜夜爽视频| www.色视频.com| 中文字幕制服av| av福利片在线| 性色av一级| 亚洲精品日韩在线中文字幕| 最近手机中文字幕大全| 亚洲中文av在线| 日本爱情动作片www.在线观看| 日日摸夜夜添夜夜添av毛片| 日本猛色少妇xxxxx猛交久久| av在线app专区| 亚洲国产av新网站| 中文字幕亚洲精品专区| 欧美亚洲 丝袜 人妻 在线| 精品人妻熟女av久视频| 亚洲国产精品一区二区三区在线| 能在线免费看毛片的网站| 看十八女毛片水多多多| 日韩成人av中文字幕在线观看| 狂野欧美激情性xxxx在线观看| 亚洲精品日本国产第一区| 欧美区成人在线视频| 午夜91福利影院| 日本黄色日本黄色录像| 亚洲精品国产色婷婷电影| 成人美女网站在线观看视频| 国产一区二区在线观看av| 国产精品久久久久久久久免| 国产成人精品久久久久久| 成人无遮挡网站| 久久久国产精品麻豆| 黄色毛片三级朝国网站 | 亚洲精品久久午夜乱码| 免费看不卡的av| 有码 亚洲区| 久久精品熟女亚洲av麻豆精品| 国产国拍精品亚洲av在线观看| 老女人水多毛片| 99热国产这里只有精品6| 嘟嘟电影网在线观看| 国产成人精品无人区| 夜夜骑夜夜射夜夜干| 国产av码专区亚洲av| 在线观看免费高清a一片| 久久久国产精品麻豆| 亚洲色图综合在线观看| 欧美激情国产日韩精品一区| 久久人人爽av亚洲精品天堂| 午夜视频国产福利| 精品久久国产蜜桃| 国产免费又黄又爽又色| 中文精品一卡2卡3卡4更新| 国产深夜福利视频在线观看| 人人妻人人澡人人看| 特大巨黑吊av在线直播| 亚洲美女黄色视频免费看| 国产无遮挡羞羞视频在线观看| 免费高清在线观看视频在线观看| 午夜激情福利司机影院| 亚洲精品日韩在线中文字幕| 曰老女人黄片| 日韩欧美 国产精品| 久久久久网色| 大话2 男鬼变身卡| a 毛片基地| 我的老师免费观看完整版| 曰老女人黄片| 亚洲av中文av极速乱| 麻豆精品久久久久久蜜桃| 国产亚洲5aaaaa淫片| 天堂俺去俺来也www色官网| 国产亚洲5aaaaa淫片| 国产日韩欧美视频二区| 最新的欧美精品一区二区| 免费在线观看成人毛片| 免费人妻精品一区二区三区视频| 国产乱来视频区| 哪个播放器可以免费观看大片| 纯流量卡能插随身wifi吗| 日韩不卡一区二区三区视频在线| 亚洲精品一区蜜桃| 中国三级夫妇交换| 国产精品麻豆人妻色哟哟久久| 欧美精品国产亚洲| 国产伦精品一区二区三区四那| 日韩强制内射视频| 中文资源天堂在线| 亚洲国产精品一区三区| 久久久久久久久久成人| 视频中文字幕在线观看| 中文资源天堂在线| 亚洲精品久久午夜乱码| 中文资源天堂在线| 综合色丁香网| 成年人免费黄色播放视频 | 中文字幕制服av| av免费观看日本| 国产91av在线免费观看| 少妇人妻一区二区三区视频| 青春草国产在线视频| 街头女战士在线观看网站| 超碰97精品在线观看| 婷婷色综合大香蕉| 国产在线一区二区三区精| 亚洲精品乱久久久久久| 日韩视频在线欧美| 精品一区在线观看国产| 欧美激情国产日韩精品一区| 少妇猛男粗大的猛烈进出视频| 九九在线视频观看精品| 亚洲精品日本国产第一区| 91午夜精品亚洲一区二区三区| 国产精品久久久久久精品古装| 少妇丰满av| 日本91视频免费播放| 777米奇影视久久| 少妇的逼水好多| 天堂8中文在线网| 五月开心婷婷网| 午夜91福利影院| 寂寞人妻少妇视频99o| 国产中年淑女户外野战色| 五月伊人婷婷丁香| 精品亚洲成a人片在线观看| 久久久国产一区二区| 80岁老熟妇乱子伦牲交| 日本av手机在线免费观看| 人人妻人人澡人人爽人人夜夜| 亚洲成人手机| 久久人妻熟女aⅴ| 亚洲欧美中文字幕日韩二区| 国产亚洲5aaaaa淫片| 国产91av在线免费观看| 99久久中文字幕三级久久日本| 日韩电影二区| av天堂久久9| 免费看光身美女| 欧美日韩国产mv在线观看视频| 欧美xxⅹ黑人| 久久精品国产亚洲网站| 日韩伦理黄色片| 伊人久久国产一区二区| 久久人人爽人人爽人人片va| 在线播放无遮挡| 男男h啪啪无遮挡| 大话2 男鬼变身卡| 国产日韩欧美视频二区| 亚洲av成人精品一二三区| 嘟嘟电影网在线观看| 一区二区av电影网| 美女中出高潮动态图| 偷拍熟女少妇极品色| 成人免费观看视频高清| 亚洲av免费高清在线观看| 久久久午夜欧美精品| 如何舔出高潮| 国产精品国产三级国产av玫瑰| 精品一品国产午夜福利视频| 美女xxoo啪啪120秒动态图| 国产成人精品福利久久| 午夜老司机福利剧场| av网站免费在线观看视频| 国产视频内射| 搡女人真爽免费视频火全软件| 在线亚洲精品国产二区图片欧美 | 一边亲一边摸免费视频| 国产成人一区二区在线| 精品久久久精品久久久| 久久热精品热| 国产精品蜜桃在线观看|