锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 涓銆佸紩璦 Mondrian, 钂欏緱閲屽畨·鐨壒1872-1944鑽峰叞鐢誨錛屼綔鍝佷互浜ら敊鐨勪笁鍘熻壊涓哄熀鑹茬殑鍨傜洿綰挎潯鍜屽鉤闈負(fù)鐗圭偣錛屼粬鐨勮憲浣滃寘鎷?/span> 鏂伴犲瀷涓諱箟(1920騫達(dá)級(jí)錛屽鎶借薄鑹烘湳鐨勫彂灞曟浘緇忎駭鐢熷緢娣卞獎(jiǎng)鍝嶃傗斺旈噾灞辮瘝闇稿鏄銆?/span> 涓嶈繃,鏈枃鎵瑕佽璁虹殑鍙笉鏄繖浣嶈壓鏈銆傞偅鍒板簳mondrian鏄粈涔堝憿錛?/span> Mondrian鏄竴涓紑婧愰」鐩備竴涓敤Java鍐欐垚鐨凮LAP錛堝湪綰垮垎鏋愭у鐞嗭級(jí)寮曟搸銆傚畠鐢∕DX璇█瀹炵幇鏌ヨ錛屼粠鍏崇郴鏁版嵁搴?RDBMS)涓鍙栨暟鎹傜劧鍚庣粡榪嘕ava API鐢ㄥ緇寸殑鏂瑰紡瀵圭粨鏋滆繘琛屽睍紺恒?/span> 鎴戜滑閮界煡閬擄紝鍦ㄧ嚎鍒嗘瀽澶勭悊(OLAP)瑕佸疄鏃跺湴鍒嗘瀽澶ч噺鏁版嵁銆?#8220;online”榪欎釜璇嶇殑鍚箟灝辨槸鍗充嬌鐩稿叧鐨勬暟鎹噺鏄法澶х殑鈥斺斿彲鑳戒互GB涓哄崟浣嶁斺旂郴緇熶篃瑕佽凍澶熷揩鐨勫搷搴斾互鏄劇ず緇撴灉銆?/span> OLAP鐢ㄤ簡(jiǎn)澶氱淮鍒嗘瀽鐨勬妧鏈傚敖綆″叧緋誨瀷鏁版嵁搴撴墍瀛樺偍鐨勬墍鏈夋暟鎹兘鏄互琛屽拰鍒楃殑褰㈠紡瀛樺湪鐨勶紝浣嗕竴涓緇存暟鎹泦榪樻槸鍙互鐢辮醬(axes)鍜屽崟鍏?cell)緇勬垚銆?/span> 鍦ㄤ笂闈㈢殑渚嬪瓙涓紝鏃墮棿鏄釜緇村害錛?/span>dimension錛夛紝鑰屽畠涓嬮潰鐨勫眰嬈★紙Hierarchies錛夊張鍒嗕負(fù)鍗婂勾銆佸搴︾瓑綰у埆(Level)銆?/span> 浜屻佹劅鎬ц璇嗏斺旇繍琛屼竴涓皬瀹炰緥 鎴戜滑鏆傛椂鍏堜笉璁ㄨMondrian鎵鐢ㄥ埌鐨勪竴浜涙妧鏈傛垜浠彲浠ュ厛浠庝竴涓皬渚嬪瓙寮濮嬶紝涓嶅繀鍦ㄦ剰姣忎釜緇嗚妭錛屽彧鏄笇鏈涘ぇ瀹舵湁涓劅鎬ц璇嗗厛銆傚湪瀹炴柦榪欎釜渚嬪瓙鐨勮繃紼嬩腑錛屾垨璁歌鑰呭氨鑳借浜涚鍊?/span> 棣栧厛搴旇鍒?a >http://sourceforge.net/projects/mondrian/涓嬭澆mondrian鐨勬渶鏂扮増鏈傝繖鏄竴涓獄ip鍖咃紝鍖呮嫭鎴戜滑瑕佺敤鍒扮殑lib鍜屼竴涓緥瀛愩?/span> 褰撶劧錛岃鑰呭畬鍏ㄥ彲浠ヨ繍琛宮ondrian鑷甫鐨勫疄渚嬶紝涓嶈繃榪欎釜渚嬪瓙鏈変簺綰風(fēng)箒澶嶆潅錛岄櫎浜?jiǎn)Mondrian鏈韓榪樻湁鍏跺畠鎶鏈湪閲岄潰錛屼笉澶у鏄撹娓呮錛屼篃涓嶅お閫傚悎鍒濆鑰呭涔?fàn)銆傛墍浠ワ紝絎旇呭湪榪欓噷璁捐涓涓畝媧佸共鍑鐨勬渶灝忓寲瀹炰緥銆?/span> 鏈枃鎵闃愯堪鐨勫疄渚嬬幆澧冩槸Windows2000+Tomcat+Oracle銆傚茍涓旇涓鴻鑰呭凡緇忛拡瀵筳dk鍜孴omcat鍋氫簡(jiǎn)姝g‘鐨勫紑鍙戠幆澧冪殑璁劇疆銆?/span> 2錛?/span>1鍑嗗宸ヤ綔 2錛?/span>2鏁版嵁搴撶粨鏋?/span> 鍦ㄨ繖涓猼iny鐨勭郴緇熶腑錛屾暟鎹簱鏈?涓〃tb_employee錛堣亴鍛樿〃錛?tb_time錛堟椂闂磋〃錛?tb_salary錛堣柂閰〃錛夈傝〃緇撴瀯濡備笅錛?/span> drop table tb_employee; create table tb_employee ( employee_id number, --鑱屽憳id employee_name varchar2(10) --鑱屽憳濮撳悕 ); drop table tb_time; create table tb_time ( time_id number, --鏃墮棿id the_year char(4), --騫?/span> the_month char(2) --鏈?/span> ); drop table tb_salary; create table tb_salary ( employee_id number, --鑱屽憳id time_id number, --鏃墮棿id salary number(19,4) --钖叕 ); 褰撶劧錛屼負(fù)浜?jiǎn)鋴删p葷粺鑳藉榪愯錛岃繕闇瑕佽鑰呭悜鏁版嵁搴撹〃涓彃鍏ヤ竴浜涙暟鎹?/span> 2錛?/span>3鏍規(guī)嵁鏁版嵁搴撹〃鐨勭粨鏋勶紝涔﹀啓schema鏂囦歡 <?xml version="1.0"?> <Schema name="Mondrian"> <Cube name="CubeTest"> <Table name="TB_SALARY" /> <Dimension name="Employee" foreignKey="EMPLOYEE_ID" > <Hierarchy hasAll="true" primaryKey="EMPLOYEE_ID"> <Table name="TB_EMPLOYEE" /> <Level name="employeeId" column="EMPLOYEE_ID" uniqueMembers="true" > <Property name="employeeName" column="EMPLOYEE_NAME"/> </Level> </Hierarchy> </Dimension> <Dimension name="Time" foreignKey="TIME_ID" > <Hierarchy hasAll="false" primaryKey="TIME_ID" > <Table name="TB_TIME" /> <Level name="year" column="THE_YEAR" uniqueMembers="false" /> <Level name="month" column="THE_MONTH" uniqueMembers="false" /> </Hierarchy> </Dimension> <Measure name="Salary" column="SALARY" aggregator="sum" /> </Cube> </Schema> 鏂囦歡璺緞涓簃ywebapp"WEB-INF"mondriantest.xml 2錛?/span>4鍒╃敤MDX鏌ヨ mywebapp"mondriantest.jsp 1 <%@ page import="mondrian.olap.*"%> <% 2 Connection connection = DriverManager.getConnection ("Provider=mondrian; Jdbc=jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:dbname; JdbcUser=dbuser; JdbcPassword=dbpasswd; Catalog=file:///c:/Tomcat4.1/webapps/mywebapp/WEB-INF/mondriantest.xml; JdbcDrivers=oracle.jdbc.driver.OracleDriver;",null,false); 3 String queryStr= "select {[Measures].[Salary]} ON COLUMNS, {[Employee].[employeeId].Members} ON ROWS from CubeTest "; 4 Query query =connection.parseQuery(queryStr); 5 Result result = connection.execute(query); out.println("get result"); %> 2錛?/span>5榪愯 http://localhost:8080/mywebapp/ mondriantest.jsp 涓夈佹繁鍏ユ帰璁?/strong> 3錛?/span>1 API mondrian涓哄鎴風(fēng)搴旂敤紼嬪簭鎻愪緵浜?jiǎn)API鎺ュ彛浠ヨ繘琛屾煡璇€?nbsp;鑰岃繖浜汚PI瀵逛簬浠諱綍鐢ㄨ繃JDBC鐨勪漢閮戒細(xì)瑙夊緱浼兼浘鐩歌瘑鐨勩備富瑕佺殑涓嶅悓鐐規(guī)槸鏌ヨ璇█鐨勪笉鍚岋細(xì)Mondrian鐢ㄧ殑鏄疢DX('Multi-Dimensional eXpressions'),鑰?/span>JDBC鍒欑敤鐨勬槸SQL銆?/span> 鍜?/span>JDBC涓鏍鳳紝涔熸槸瑕佺粡榪囧緩绔嬭繛鎺ワ紝褰㈡垚鏌ヨ璇彞錛屾墽琛屾煡璇㈠緱鍒扮粨鏋滈泦絳夊嚑涓楠ょ殑銆?/span> 鎴戜滑鏉ョ湅鐪?/span>mondriantest.jsp鐨勪唬鐮?/span> 絎?琛岋細(xì)import mondrian.olap.* 榪欐槸寮曞叆鎴戜滑鎵闇鐨勭被錛屼笅闈㈣鐢ㄥ埌鐨凞riverManager銆丆onnection銆丵uery銆丷esult閮藉湪榪欎釜package鍐呫傝繖涓猵ackage涓鑸綅浜巑ondrian.jar涓?/span> 絎?琛岋細(xì)Connection connection = DriverManager.getConnection ("Provider=mondrian; Jdbc=jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:dbname; JdbcUser=dbuser; JdbcPassword=dbpasswd; Catalog=file:///c:/Tomcat4.1/webapps/mywebapp/WEB-INF/mondriantest.xml; JdbcDrivers=oracle.jdbc.driver.OracleDriver;",null,false); 閫氳繃DriverManager鍒涘緩涓涓狢onnection鐨勫疄渚嬶紝寤虹珛璧鋒暟鎹簱榪炴帴銆?/span> 鍏朵腑Jdbc=jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:dbname; 鏄緗暟鎹簱鐨刬p鍜屽簱鍚嶃侸dbcUser=dbuser; 璁劇疆鏁版嵁搴撶敤鎴楓侸dbcPassword=dbpasswd; 璁劇疆鐢ㄦ埛瀵嗙爜銆傝?/span> Catalog=file:///c:/Tomcat4.1/webapps/mywebapp/WEB-INF/mondriantest.xml; 灝辨槸璁劇疆MDX璇彞鏌ヨ瑕佸搴旂殑schema鏂囦歡鐨勮礬寰?/span> 絎?琛岋細(xì)String queryStr= "select {[Measures].[Salary]} ON COLUMNS, {[Employee].[employeeId].Members} ON ROWS from CubeTest "; 褰㈡垚MDX鐨勬煡璇㈣鍙ャ侻DX璇彞鐨勫艦寮忓拰schema鏂囦歡鐨勮瀹氭槸瀵嗗垏鐩稿叧鐨勶紝褰撶劧schema鏂囦歡鐨勫艦鎴愪篃鏄敱鏁版嵁搴撶粨鏋勫喅瀹氱殑銆?/span> 絎?琛岋細(xì)Query query =connection.parseQuery(queryStr);瀵筂DX璇彞榪涜鍒嗘瀽澶勭悊錛屾槸鍚︾鍚坰chema鏂囦歡瀹氫箟銆佹暟鎹簱緇撴瀯鍜屾暟鎹簱鏁版嵁銆?/span> 絎?琛岋細(xì)Result result = connection.execute(query);鎵ц鏌ヨ錛屽緱鍒扮粨鏋滈泦銆?/span> 鎴戜滑鍙戠幇Query綾諱技浜嶫DBC鐨凷tatement,鑰孯esult鍒欓叿浼間簬ResultSet銆?/span> 3錛?/span>2 schema 3錛?/span>2錛?/span>1浠涔堟槸schema schema瀹氫箟浜?jiǎn)涓涓緇存暟鎹簱銆傚寘鍚簡(jiǎn)涓涓昏緫妯″瀷錛岃岃繖涓昏緫妯″瀷鐨勭洰鐨勬槸涓轟簡(jiǎn)涔﹀啓MDX璇█鐨勬煡璇㈣鍙ャ傝繖涓昏緫妯″瀷瀹為檯涓婃彁渚涗簡(jiǎn)榪欏嚑涓蹇碉細(xì)Cubes,緇村害錛?/span>Dimensions錛夛紝 灞傛錛?/span>Hierarchies錛夛紝綰у埆錛?/span>Levels錛夛紝鍜屾垚鍛橈紙Members錛夈?/span> 鑰?/span>schema鏂囦歡灝辨槸緙栬緫榪欎釜schema鐨勪竴涓?/span>xml鏂囦歡銆傚湪榪欎釜鏂囦歡涓艦鎴愰昏緫妯″瀷鍜屾暟鎹簱鐗╃悊妯″瀷鐨勫搴斻?/span> 3錛?/span>2錛?/span>2 schema鐨勯昏緫緇撴瀯 3錛?/span>2錛?/span>2錛?/span>1 Cube 涓涓?/span>Cube鏄竴緋誨垪緇村害(Dimension)鍜屽害閲?/span>(Measure)鐨勯泦鍚堝尯鍩熴傚湪Cube涓紝Dimension鍜?/span>Measure鐨勫叡鍚屽湴鏂瑰氨鏄叡鐢ㄤ竴涓簨瀹炶〃銆?/span> 渚嬶細(xì) <Cube name="CubeTest"> <Table name="TB_SALARY" /> ……. </Cube> <Table>鏍囩紜畾浜?jiǎn)鎵鐢ㄧ殑浜嬪疄琛ㄧ殑琛ㄥ悕銆?/span> 3錛?/span>2錛?/span>2錛?/span>2 Measure 涓涓害閲忥紝綆鍗曠殑璇達(dá)紝灝辨槸瑕佽璁$畻鐨勫箋?/span> 渚嬶細(xì) <Measure name="Salary" column="SALARY" aggregator="sum" /> <Measure>鏍囩鏈?/span>3涓繀瑕佺殑灞炴?/span>name錛堝害閲忓悕錛夛紝column錛堝湪浜嬪疄琛ㄤ腑鐨勫瓧孌靛悕錛?/span>, aggregation錛堣仛鍚堟墍鐢ㄧ殑鏂規(guī)硶錛夈?/span> 3錛?/span>2錛?/span>2錛?/span>3 Dimenesion 鑰岀淮搴︿竴鑸湁鍏剁浉瀵瑰簲鐨勭淮搴﹁〃銆?/span> 渚嬶細(xì) <Dimension name="Time" foreignKey="TIME_ID" > <Hierarchy hasAll="false" primaryKey="TIME_ID" > <Table name="TB_TIME" /> <Level name="year" column="THE_YEAR" uniqueMembers="false" /> <Level name="month" column="THE_MONTH" uniqueMembers="false" /> </Hierarchy> </Dimension> 涓鑸珼imesion鍖呭惈灞傛錛圚ierarchy錛夛紝鑰宧ierarchy鏄敱綰у埆錛圠evel錛夌粍鎴愩?/span> <Dimension>鏍囩鐨刦oreignKey鏄簨瀹炶〃涓殑瀛楁錛?lt;Hierarchy>鏍囩鐨刾rimaryKey鏄淮搴﹁〃涓殑瀛楁錛岄氳繃榪欑鏂瑰紡鎶婁簨瀹炶〃鍜岀淮搴﹁〃鍏寵仈璧鋒潵銆?lt;Hierarchy>鏍囩涓嬬殑<Table>鏍囩灝辨寚鏄庝簡(jiǎn)緇村害琛ㄥ悕銆傝岃嫢騫蹭釜Level瀵瑰簲鐫緇村害琛ㄧ殑鑻ュ共瀛楁銆?/span> 3錛?/span>3 MDX璇█ MDX鏄負(fù)浜?jiǎn)鏌ヨ澶毦l存暟鎹殑錛岃孲QL鏄負(fù)浜?jiǎn)鏌ヨ鍏尘p繪暟鎹簱鐨勩傝孧ondrian鎵娑夊強(qiáng)鍒扮殑涓浜汳DX姒傚康銆丮DX璇硶浠ュ強(qiáng)緋葷粺瀹氫箟鐨凪DX鍑芥暟鍜屽井杞殑MDX鍗佸垎鎺ヨ繎錛屽樊鍒井灝忋傚畬鍏ㄥ彲浠ュ弬鑰冨井杞殑甯姪鏂囨。榪涜瀛︿範(fàn)銆傚湪姝ゅ氨涓嶅湪璧樿堪銆侻DX璇█鍩烘湰涓婂凡鎴愪負(fù)澶氱淮鏁版嵁搴撴煡璇㈣璦鐨勬爣鍑嗐?/span> 鍥涖佺粨璇?/strong> Mondrian浣滀負(fù)鍩轟簬java鐨凮LAP寮曟搸錛岃屼笖鏄紑婧愮殑欏圭洰錛屼負(fù)閭d簺鍩轟簬java鐨勯」鐩岃鑴辯寰蔣鏋勬灦浣嗗張涓嶅緱涓嶅澶ч噺鏁版嵁榪涜鍒嗘瀽鐨勯」鐩張鎻愪緵浜?jiǎn)涓縐嶅彲琛岀殑鏂規(guī)銆傚笇鏈涘畠涔熻兘璞?/span>钂欏緱閲屽畨·鐨壒瀵規(guī)娊璞¤壓鏈殑鍙戝睍浜х敓褰卞搷涓鏍瘋搗鍒頒竴瀹氱殑浣滅敤銆?/span>鍦?Tomcat%"webapp"渚濇寤虹珛mywebapp錛宮ywebapp"WEB-INF錛宮ywebapp"WEB-INF"lib,鎶?/font>
mondrian.war"WEB-INF"lib"mondrian.jar,javacup.jar,
xalan.jar,junit.jar
絳夌浉鍏崇殑jar鍖卌opy鍒?/span>
%TOMCAT_HOME%
"webapps"mywebapp"lib"
涓嬨?/span>
榪欐椂鍚姩to
mcat,
鍦ㄦ祻瑙堝櫒鍦板潃鏍忎腑杈撳叆
鍗沖彲銆?/font>
]]>
BI(Business Intelligence) 鏄竴縐嶈繍鐢ㄤ簡(jiǎn)鏁版嵁浠撳簱銆佸湪綰垮垎鏋愬拰鏁版嵁鎸栨帢絳夋妧鏈潵澶勭悊鍜屽垎鏋愭暟鎹殑宕柊鎶鏈紝鐩殑鏄負(fù)浼佷笟鍐崇瓥鑰呮彁渚?strong style="color: #ff0000">鍐崇瓥鏀寔銆?br />
浠庡畾涔変笂鎴戜滑瑕佹槑鐧紹I榪愯鐨勫熀紜鏄?nbsp;錛氭暟鎹粨搴擄紝鍜岃仈鏈哄垎鏋?錛屾暟鎹寲鎺?br />
鐩殑錛氭彁渚涘喅絳栨敮鎸?br />
2銆丅I鍒嗙被
淇℃伅綾?BI 搴旂敤
鎸囩敱鍘熷鏁版嵁鍔犲伐鑰屾潵鐨?strong>鏁版嵁鏌ヨ銆?strong>鎶ヨ〃鍥捐〃銆?strong>澶氱淮鍒嗘瀽銆?strong>鏁版嵁鍙鍖?/strong>絳夊簲鐢紝榪欎簺
搴旂敤鐨勫叡鍚岀壒鐐規(guī)槸錛氬皢鏁版嵁杞崲涓哄喅絳栬呭彲鎺ュ彈鐨勪俊鎭紝灞曠幇緇欏喅絳栬呫備緥濡傚皢閾惰浜ゆ槗鏁版嵁鍔犲伐涓洪摱琛岃儲(chǔ)鍔℃姤琛ㄣ?/span>
鐭ヨ瘑綾?BI 搴旂敤
鎸囬氳繃鏁版嵁鎸栨帢鎶鏈拰宸ュ叿錛屽皢鏁版嵁涓殣鍚殑鍏崇郴鍙戞帢鍑烘潵錛屽埄鐢ㄨ綆楁満鐩存帴灝嗘暟鎹姞宸ヤ負(fù)鐭ヨ瘑錛屽睍鐜扮粰鍐崇瓥鑰呫?br />
3銆丅I鐨勫簲鐢ㄦā寮?br />
A銆佸垵綰фā寮?br />
鏁版嵁鏌ヨ鍜岀敓鎴愭姤琛紝榪欐槸BI鐨勫垵綰у簲鐢ㄦā寮?br />
B銆?br />
1銆丅I 楂樼駭搴旂敤妯″紡
OLAP 錛屽嵆鑱旀満鍒嗘瀽澶勭悊錛屾槸 BI 甯︽潵鐨勪竴縐嶅叏鏂扮殑鏁版嵁瑙傚療鏂瑰紡錛屾槸 BI 鐨勬牳蹇?jī)鎶鏈?涔嬩竴銆?br />
2銆佹暟鎹寲鎺?/span>
鏁版嵁鎸栨帢鐨勭洰鐨勬槸閫氳繃璁$畻鏈哄澶ч噺鏁版嵁榪涜鍒嗘瀽錛屾壘鍑烘暟鎹箣闂存綔钘忕殑瑙勫緥鍜岀煡璇嗭紝騫朵互鍙悊瑙g殑鏂瑰紡灞曠幇緇欑敤鎴楓傛暟鎹寲鎺樻槸鏈楂樼駭鐨?BI 搴旂敤錛屽洜涓哄畠鑳戒唬鏇塊儴鍒嗕漢鑴戝姛鑳姐?nbsp;
鏁版嵁鎸栨帢鐨勪笁澶ц绱犳槸錛?
鎶鏈拰綆楁硶錛?/strong>鐩墠甯哥敤鐨勬暟鎹寲鎺樻妧鏈寘鎷斺?br />
鑷姩綾誨埆渚︽祴(Auto Cluster Detection)
鍐崇瓥鏍?Decision Trees)
紲炵粡緗戠粶(Neural Networks)
鏁版嵁錛?/strong>鐢變簬鏁版嵁鎸栨帢鏄竴涓湪宸茬煡涓寲鎺樻湭鐭ョ殑榪囩▼錛?br />
鍥犳闇瑕佸ぇ閲忔暟鎹殑縐瘡浣滀負(fù)鏁版嵁婧愶紝鏁版嵁縐瘡 棰勬祴妯″瀷錛?/strong>涔熷氨鏄皢闇瑕佽繘琛屾暟鎹寲鎺樼殑涓氬姟閫昏緫鐢?br />
璁$畻鏈烘ā鎷熷嚭鏉ワ紝榪欎篃鏄暟鎹寲鎺樼殑涓昏浠誨姟銆?br />
4銆?nbsp;搴曞駭鈥斺旀暟鎹粨搴撴妧鏈?br />
鏁版嵁浠撳簱(Data Warehouse)鏄竴涓潰鍚戜富棰樼殑(Subject Oriented)銆侀泦鎴愮殑(Integrate)銆佺浉瀵圭ǔ瀹氱殑(Non-Volatile)銆佸弽鏄犲巻鍙插彉鍖?Time Variant)鐨勬暟鎹泦鍚堬紝鐢ㄤ簬鏀寔綆$悊鍐崇瓥銆備互涓婃槸鏁版嵁浠撳簱鐨勫畼鏂瑰畾涔夈?nbsp;
閲忚秺澶э紝鏁版嵁鎸栨帢宸ュ叿灝變細(xì)鏈夋洿澶氱殑鍙傝冪偣銆?/p>
5銆佹葷粨錛?br />
瑕佹兂瀛﹀ソBI錛屼互涓婄煡璇嗙偣鏄熀紜銆傚繀欏繪妸鍩虹瀛︿範(fàn)鎵嶈兘娣卞垏鐨勭悊瑙I錛岀悊瑙e鎴峰湪榪欎富闈㈢湡姝f剰涔変笂鐨勯渶姹傘?br />
]]>
主站蜘蛛池模板:
久久精品国产亚洲av水果派|
亚洲AV无码乱码在线观看代蜜桃|
免费黄色电影在线观看|
亚洲国产中文在线视频|
日韩亚洲精品福利|
午夜精品免费在线观看|
亚洲国产欧美国产综合一区
|
免费国产精品视频|
在线观看免费视频网站色|
亚洲youjizz|
亚洲人成影院在线无码按摩店|
永久免费av无码网站韩国毛片|
七次郎成人免费线路视频|
亚洲视频一区二区三区|
亚洲精品97久久中文字幕无码|
1000部拍拍拍18勿入免费视频下载|
男男gay做爽爽的视频免费|
亚洲性天天干天天摸|
国产乱子影视频上线免费观看|
在线看片免费人成视频播|
相泽南亚洲一区二区在线播放|
91亚洲国产成人久久精品网站|
亚洲国产成人久久一区WWW|
亚洲免费福利在线视频|
成人无码精品1区2区3区免费看|
国产精品亚洲四区在线观看|
亚洲av永久无码精品表情包|
免费国产精品视频|
德国女人一级毛片免费|
97在线视频免费公开观看|
国产精品午夜免费观看网站|
亚洲精品国产首次亮相|
亚洲日本在线播放|
亚洲av一综合av一区|
亚洲色婷婷综合开心网|
成人永久免费福利视频网站|
69式国产真人免费视频|
免费人成在线观看网站品爱网|
中国一级毛片视频免费看|
豆国产96在线|亚洲|
亚洲一卡一卡二新区无人区|