国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

SOA架構(gòu)在遼河流域報表管理系統(tǒng)的研究與實踐①

2017-10-13 14:47:45王俊霖
計算機系統(tǒng)應(yīng)用 2017年3期
關(guān)鍵詞:請求者數(shù)據(jù)源報表

趙 楊, 關(guān) 寧, 王俊霖

?

SOA架構(gòu)在遼河流域報表管理系統(tǒng)的研究與實踐①

趙 楊1,2, 關(guān) 寧1,2, 王俊霖3

1(中國科學(xué)院大學(xué), 北京 100049)2(中國科學(xué)院沈陽計算技術(shù)研究所, 沈陽 110168)3(大連理工大學(xué)軟件學(xué)院, 大連 116620)

報表服務(wù)是遼河流域水環(huán)境相關(guān)管理系統(tǒng)中核心業(yè)務(wù)需求之一. 隨著水環(huán)境治理范圍擴大, 報表服務(wù)需求多樣化, 現(xiàn)有分散式報表管理方式已不能滿足用戶實際需求. 對此, 從異構(gòu)系統(tǒng)中報表實際業(yè)務(wù)需求出發(fā), 結(jié)合SOA架構(gòu)模型松散耦合與可重用性等特點, 提出了一種基于SOA架構(gòu)的報表管理系統(tǒng). 解決了多系統(tǒng)之間重復(fù)開發(fā)與數(shù)據(jù)共享等問題. 本文通過對報表業(yè)務(wù)核心功能及流程的提煉, 建立了相應(yīng)的服務(wù)模型, 根據(jù)對不同服務(wù)的組合和調(diào)用, 實現(xiàn)了支持多系統(tǒng)并發(fā)訪問的報表管理系統(tǒng).

SOA; 報表管理系統(tǒng); 服務(wù); 服務(wù)模型

1 引言

近年來, 水環(huán)境形勢嚴峻, 流域水環(huán)境治理現(xiàn)狀遠滯后于社會經(jīng)濟發(fā)展. 為了加大遼河流域水環(huán)境治理力度, 在結(jié)合流域水環(huán)境監(jiān)測和流域水污染現(xiàn)狀等相關(guān)問題后, 構(gòu)建了多個科學(xué)的水環(huán)境管理技術(shù)平臺, 如: 遼河流域水環(huán)境風(fēng)險評估與預(yù)警系統(tǒng)、污染源管理系統(tǒng)和水環(huán)境質(zhì)量管理系統(tǒng)等. 這對推進生態(tài)文明建設(shè)、落實科學(xué)發(fā)展觀具有重大的戰(zhàn)略意義.

在“遼河流域水環(huán)境管理綜合示范” 項目中多個系統(tǒng)均存在報表服務(wù)需求, 但系統(tǒng)間相互獨立、運行環(huán)境不同、系統(tǒng)開發(fā)標準不統(tǒng)一, 使報表服務(wù)與水流域相關(guān)管理系統(tǒng)呈現(xiàn)一種“緊耦合”的狀態(tài). 當(dāng)報表需求發(fā)生相應(yīng)變化時, 系統(tǒng)無法快速靈活的做出調(diào)整. 大量頻繁的修改代碼, 也將給系統(tǒng)的穩(wěn)定性與安全性帶來新的挑戰(zhàn). 從而導(dǎo)致系統(tǒng)部署復(fù)雜升級和維護困難, 設(shè)計維護人員工作效率低、管理成本高, 使整個管理系統(tǒng)的運行不夠靈活和流暢.

目前, 業(yè)內(nèi)的報表軟件從形式上主要分為畫布式報表和類Excel報表. 畫布式報表(簡稱SQL型報表)可做到數(shù)據(jù)可視化綁定, 報表控件位置自由放置. 國內(nèi)外較多應(yīng)用的畫布式報表軟件主要有: Crystal Reports、FastReport等. 類Excel報表(簡稱Cell型報表)的報表設(shè)計界面類似于Excel, 通過單元格對數(shù)據(jù)源進行綁定, 這類報表軟件主要有: 潤乾報表、用友華表等[1]. 通過對現(xiàn)有報表軟件的研究, 以及針對報表相關(guān)特性及系統(tǒng)應(yīng)用需求的分析, 本文提出了一種面向服務(wù)的體系架構(gòu)(Service-Oriented Architecture, 以下簡稱“SOA”)的報表管理系統(tǒng).

該系統(tǒng)采用SOA架構(gòu)思想、通用Web服務(wù)模式, 針對流域水環(huán)境相關(guān)管理系統(tǒng)中不同的報表服務(wù)需求, 在現(xiàn)有各獨立的系統(tǒng)基礎(chǔ)之上, 對服務(wù)對象、功能結(jié)構(gòu)、流程關(guān)系進行聚類和重組, 整合為一個全新的業(yè)務(wù)系統(tǒng). 使得我們只需關(guān)注各個服務(wù)接口的調(diào)用, 通過組合的服務(wù), 可以簡單快速的部署整個應(yīng)用系統(tǒng), 而不涉及底層編程接口和通訊模型, 也無需理解服務(wù)底層的具體實現(xiàn)[2]. 這充分利用了SOA的低耦合性及高可擴展性, 有效地簡化了設(shè)計人員重復(fù)繁瑣的設(shè)計工作, 提高了異構(gòu)系統(tǒng)的靈活性和開發(fā)效率、降低了系統(tǒng)的復(fù)雜性和建設(shè)成本.

2 基于SOA的報表管理系統(tǒng)架構(gòu)

基于SOA的報表管理系統(tǒng)采用了層次劃分的思想, 將整個系統(tǒng)劃分為: 顯示層、業(yè)務(wù)流程層、服務(wù)層和數(shù)據(jù)資源層[3], 具體架構(gòu)圖如圖1所示.

圖1 基于SOA的報表管理系統(tǒng)架構(gòu)

(1) 顯示層. 主要負責(zé)報表管理系統(tǒng)中人機交互界面, 可以根據(jù)用戶的訪問權(quán)限不同對報表界面進行靈活的配置. 采用Web服務(wù)對前端顯示層邏輯進行封裝, 保證各系統(tǒng)集成后的松散耦合性.

(2) 業(yè)務(wù)流程層. 引用了企業(yè)服務(wù)總線(Enterprise Service Bus, 以下簡稱“ESB”)[4], 根據(jù)業(yè)務(wù)流程通過ESB對服務(wù)層中的服務(wù)進行發(fā)現(xiàn), 調(diào)度服務(wù)隊列中的請求, 判斷服務(wù)注冊中心是否存在該服務(wù), 并對服務(wù)進行分發(fā)、路由、編排等操作, 使服務(wù)可以在總線上進行交互. 同時也可以及時處理不同業(yè)務(wù)系統(tǒng)發(fā)送來的請求, 并合理調(diào)度相應(yīng)服務(wù)模塊保證系統(tǒng)可以正常運行. 無論是系統(tǒng)內(nèi)的服務(wù)調(diào)度還是系統(tǒng)間的服務(wù)調(diào)度, 都將通過業(yè)務(wù)流程層, 得以調(diào)度完成.

(3) 服務(wù)層. 由眾多服務(wù)模型所組成, 通過服務(wù)建模將業(yè)務(wù)組件轉(zhuǎn)化為服務(wù)模型, 是整個系統(tǒng)實現(xiàn)過程中的核心層次. 當(dāng)接收到業(yè)務(wù)流程層發(fā)送的請求后, 可以靈活劃分或組裝服務(wù)模塊, 完成相應(yīng)的請求. 當(dāng)需要添加新服務(wù)時, 可以直接在服務(wù)層進行操作.

(4) 數(shù)據(jù)資源層. 主要對用戶數(shù)據(jù)和數(shù)據(jù)庫進行存儲和管理.

應(yīng)用上述體系架構(gòu), 將系統(tǒng)應(yīng)用中功能和業(yè)務(wù)組件提取出來, 以基于SOA的服務(wù)模塊的方式進行開發(fā)和部署, 抽象了具體實現(xiàn)過程中訪問的無關(guān)細節(jié). 除此之外, 若需添加新功能, 只需將功能抽象為服務(wù)便可輕松的添加到系統(tǒng)中去, 縮短了開發(fā)時間、提高了系統(tǒng)的可擴展性.

3 基于SOA的報表管理系統(tǒng)的設(shè)計

SOA這一概念是1996 年Gartner Group在一篇報告中正式提出[5]. 它是一種松散耦合、面向服務(wù)的組件模型. 將系統(tǒng)中不同的業(yè)務(wù)單元定義為服務(wù)(Service), 服務(wù)之間通過標準化且獨立的的接口定義進行消息通訊, 使其獨立于實現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)和編程語言, 從而使模型具有良好的通用性和重用性[6].

3.1 報表服務(wù)

“服務(wù)”是SOA架構(gòu)模型的核心理念, 是從整體業(yè)務(wù)流程中抽象出來的一些獨立、可重用的業(yè)務(wù)功能. 如圖2所示, 在SOA拓撲結(jié)構(gòu)中, 其分別由三個不同的角色所組成: Service Requester (服務(wù)請求者)、Service Broker (服務(wù)代理人)和Service Provider (服務(wù)提供者). 同時Web Service為實現(xiàn)服務(wù)提供了技術(shù)支持, 創(chuàng)建了角色之間連接的三種不同操作: publish(發(fā)布)、find(查找)、 bind(綁定). 服務(wù)提供者將以WSDL描述的服務(wù)發(fā)布到UDDI(Universal Description, Discovery and Integration)注冊中心服務(wù)并對服務(wù)請求進行響應(yīng); 服務(wù)請求者通過代理人查找所需服務(wù)并使用該服務(wù); 服務(wù)代理人注冊服務(wù)并產(chǎn)生相應(yīng)服務(wù)接口, 并向服務(wù)請求者提供搜索服務(wù).

圖2 面向服務(wù)的體系架構(gòu)的拓撲結(jié)構(gòu)

3.2 業(yè)務(wù)流程分析

基于SOA的報表管理系統(tǒng)設(shè)計目的就是為了完成對遼河流域水環(huán)境相關(guān)數(shù)據(jù)的收集、處理和展示等工作, 從而掌握流域水環(huán)境現(xiàn)狀, 根據(jù)對相應(yīng)信息分析可以快速的調(diào)整水環(huán)境治理方案. 從整體上來說, 首先需要捕獲用戶發(fā)送的報表服務(wù)請求將其作為系統(tǒng)輸入, 根據(jù)解析過濾請求獲取需求樣式, 并從數(shù)據(jù)源處獲取數(shù)據(jù)來生成報表. 最終將生成的報表發(fā)送給用戶, 從而完成整個服務(wù)流程. 通過對整個報表管理系統(tǒng)運行流程的分析, 得到核心功能的業(yè)務(wù)流程, 如圖3所示.

圖3 報表管理系統(tǒng)業(yè)務(wù)流程

當(dāng)服務(wù)器監(jiān)聽到服務(wù)請求者發(fā)送的請求時, 首先對請求進行解析從中獲取請求方法、身份驗證參數(shù)、表樣信息等參數(shù)信息, 將其作為系統(tǒng)的處理對象. 并調(diào)度運行安全認證服務(wù), 對其身份進行驗證識別, 不同身份的用戶獲得的系統(tǒng)應(yīng)用權(quán)限不盡相同. 認證成功后, 調(diào)度運行模板解析服務(wù), 根據(jù)解析服務(wù)請求中的表樣信息, 從報表模板庫中獲取不含數(shù)據(jù)參數(shù)的模板文件. 若模板庫中不存在相應(yīng)模板, 則調(diào)度運行模板的設(shè)計服務(wù), 服務(wù)請求者通過UI接口得以完成模板設(shè)計工作, 并將設(shè)計好的模板以XML形式存入報表模板庫. 得到相應(yīng)模板文件后, 運行模板生成服務(wù), 根據(jù)服務(wù)請求者傳入的數(shù)據(jù)源信息對數(shù)據(jù)庫中的數(shù)據(jù)進行查詢, 并將獲取的數(shù)據(jù)信息填入相應(yīng)的模板文件中. 最終將填充數(shù)據(jù)后的報表文件返回給服務(wù)請求者, 調(diào)用報表輸出服務(wù), 使得服務(wù)請求者可以在Web前端查看報表文件, 或選擇不同的格式將報表文件打印或?qū)С?

3.3 服務(wù)模型設(shè)計

通過對報表管理系統(tǒng)業(yè)務(wù)流程自頂向下的分析, 可以將業(yè)務(wù)流程劃分為顆粒度大小不同的子服務(wù), 然后在對子服務(wù)進行進一步的劃分, 劃分為顆粒度更小的子服務(wù). 從而逐步對服務(wù)進行分析, 并找到服務(wù)顆粒度劃分的最優(yōu)模型, 并逐一對服務(wù)進行實現(xiàn). 概括來說, 服務(wù)建模就是通過將不同的服務(wù)進行識別、定義、實現(xiàn), 最終將服務(wù)模型輸出的過程. 基于SOA的報表管理系統(tǒng)服務(wù)模塊的具體設(shè)計如圖4所示.

圖4 報表管理系統(tǒng)服務(wù)模塊

(1) 安全認證服務(wù)

安全認證服務(wù)提供了對用戶身份驗證和權(quán)限查詢的組件接口, 并對用戶的訪問和請求進行安全會話管理. 保證具有不同權(quán)限的用戶可對系統(tǒng)、數(shù)據(jù)庫、應(yīng)用功能等具有不同的訪問級別.

(2) 模板設(shè)計服務(wù)

模板設(shè)計服務(wù)中又包含了數(shù)據(jù)源配置服務(wù)和模板樣式定義服務(wù), 均是以XML文件作為通訊載體. 由用戶對所需報表樣式進行設(shè)計和排版, 如報表類型的選擇, 表頭的設(shè)計等. 設(shè)計完成后對報表所填內(nèi)容進行配置, 無需填入具體的數(shù)據(jù), 只需填寫所要顯示數(shù)據(jù)的表達公式, 之后報表生成服務(wù)會依據(jù)公式自動將查詢到的數(shù)據(jù)填入.

(3) 數(shù)據(jù)獲取服務(wù)

根據(jù)用戶配置的數(shù)據(jù)源信息對相應(yīng)數(shù)據(jù)庫進行連接, 并根據(jù)數(shù)據(jù)源中的報表參數(shù)信息對所需字段進行讀取. 根據(jù)傳入的模板設(shè)計階段用戶自定義的SQL語句, 在數(shù)據(jù)庫中執(zhí)行查詢語句并獲取所需數(shù)據(jù)形成一個結(jié)果數(shù)據(jù)源, 并將結(jié)果數(shù)據(jù)源從數(shù)據(jù)庫返回給數(shù)據(jù)讀取服務(wù)模塊.

(4) 報表生成服務(wù)

通過傳送來的報模板樣式和從數(shù)據(jù)庫傳送來的結(jié)果數(shù)據(jù)源信息, 模板解析服務(wù)對模板文件進行解析處理, 依照解析后報表模板文件中的定義, 報表填充服務(wù)將數(shù)據(jù)填充到對應(yīng)位置, 以完成報表生成的服務(wù).

(5) 報表輸出服務(wù)

報表生成完成后, 報表輸出服務(wù)通過內(nèi)置的Viewer對報表進行顯示. 也可調(diào)用報表導(dǎo)出服務(wù), 將報表文件映射成以下格式的文件進行導(dǎo)出, 如: HTML、PDF、EXCEL等. 或者通過報表打印服務(wù), 提供對報表的文檔的打印, 打印部分用戶可自行選擇.

上述只介紹了報表管理系統(tǒng)的核心服務(wù)模型, 依照SOA架構(gòu)的設(shè)計松散耦合、靈活復(fù)用的優(yōu)勢, 未來也可以根據(jù)實際需求對整個系統(tǒng)中的服務(wù)進行添加或刪除, 迅速地響應(yīng)用戶的各種需求.

4 基于SOA的報表管理系統(tǒng)的實現(xiàn)

4.1 系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)

基于SOA的報表管理系統(tǒng)采用B/S結(jié)構(gòu)、Web服務(wù)、Web Service技術(shù). SOAP用來描述傳遞信息的格式, WSDL 用來描述如何訪問服務(wù)的接口, UDDI用來管理、分發(fā)、查詢Web Service.

4.1.1 XML技術(shù)

XML是一種可擴展標記語言, 用于標記電子文件使其具有結(jié)構(gòu)性的標記語言. SOA 服務(wù)之間通過消息進行通信, 通常采用XML Schema(也叫做XSD, XML Schema Definition)來定義所交換的消息格式(即服務(wù)的公共數(shù)據(jù)). XML作為數(shù)據(jù)的載體和信息通信格式標準, 可以根據(jù)報表管理系統(tǒng)中不同的業(yè)務(wù)需求自行定義不同的樣式的標記. 使用XML技術(shù)來解決客戶端與服務(wù)端大量的數(shù)據(jù)交互問題, 主要用于用戶和服務(wù)模塊之間的通信, 對系統(tǒng)的輸入和輸出進行管理.

4.1.2 ESB技術(shù)

ESB是SOA架構(gòu)中重要的集成層組件(Integration Layer), 是在服務(wù)和應(yīng)用之間通過標準的集成方式, 提供一種支持服務(wù)間交互的橋梁. 服務(wù)可以在ESB上進行注冊登記, 使用戶可以便利地查找、調(diào)用服務(wù). 所有的服務(wù)調(diào)用都可以通過 ESB 來完成, 這樣使得報表服務(wù)調(diào)用變得十分便捷, 使得服務(wù)請求者和服務(wù)提供者之間以松散耦合的方式進行交互. 服務(wù)請求者無需要關(guān)心服務(wù)提供者所提供服務(wù)的具體實現(xiàn)方式, 雙方只要保證接口不變, 可各自可獨立進行管理.

4.2 實現(xiàn)效果

通過對遼河流域水環(huán)境報表管理系統(tǒng)的實現(xiàn), 設(shè)計完成了報表相關(guān)查詢、統(tǒng)計、顯示等業(yè)務(wù)需求. 在原有系統(tǒng)基礎(chǔ)之上進行開發(fā), 這種方式簡化了繁雜的開發(fā)工作, 提高了系統(tǒng)實施效率, 具體實現(xiàn)界面如圖5所示.

圖5 報表管理系統(tǒng)實現(xiàn)界面

4.3 系統(tǒng)測試

4.3.1用戶并發(fā)性測試

主要基于報表管理系統(tǒng)用戶數(shù)量和響應(yīng)時間對系統(tǒng)性能的測試. 分別測試了并發(fā)用戶數(shù)量在100, 200, ... , 600時, 系統(tǒng)的響應(yīng)時間. 從測試結(jié)果圖6中可看出, 隨著并發(fā)用戶的增加, 系統(tǒng)的響應(yīng)時間也在逐漸增加, 當(dāng)并發(fā)用戶達到某一數(shù)值時, 由于服務(wù)器同時接收到的請求過多, 造成服務(wù)器阻塞、響應(yīng)時間延長, 但對實際用戶體驗沒有造成過多的影響.

圖6 報表管理系統(tǒng)性能測試

4.3.2可靠性和可測試性

可靠性是指系統(tǒng)在限定時間和條件下完成指定功能任務(wù)的能力. 為測試報表管理系統(tǒng)的可靠性和可測試性, 設(shè)計了一款具有可實時狀態(tài)監(jiān)測、平均故障時間分析等功能的測試工具, 結(jié)果證明報表管理系統(tǒng)在安全性、穩(wěn)定性及容錯性等方面均達到要求.

綜上所述, 報表管理系統(tǒng)具有以下優(yōu)點:

(1) 系統(tǒng)可擴展性好: SOA架構(gòu)松散耦合, 采用定義開放的接口規(guī)范, 使整個系統(tǒng)具有良好的擴展性;

(2) 靈活性強: 系統(tǒng)服務(wù)可以動態(tài)進行添加和刪除, 而不影響整個系統(tǒng)正常運行;

(3) 錯誤影響范圍小: 當(dāng)某個服務(wù)模塊發(fā)生故障時, 測試人員只需檢測修改相應(yīng)服務(wù)模塊即可, 而不需要對整個系統(tǒng)進行檢測.

(4) 通過對報表管理系統(tǒng)進行檢驗與分析, 確保了系統(tǒng)的有效性和合理性, 充分驗證了本文所提出的模型的實用性和可行性.

5 結(jié)語

從遼河流域水環(huán)境相關(guān)管理系統(tǒng)中報表需求著手, 將SOA架構(gòu)模型應(yīng)用到報表管理系統(tǒng)的實際開發(fā)中去, 解決了異構(gòu)系統(tǒng)中報表服務(wù)統(tǒng)一管理和數(shù)據(jù)資源共享等問題. 達到了系統(tǒng)設(shè)計目標, 提高了系統(tǒng)的靈活性和擴展性, 減少了報表開發(fā)的復(fù)雜流程, 實現(xiàn)了報表服務(wù)與系統(tǒng)間的松散耦合, 使得開發(fā)人員可以更加迅速、可靠的部署或重用整個業(yè)務(wù)系統(tǒng), 可以更加從容的面對業(yè)務(wù)系統(tǒng)的需求的快速變化. 此架構(gòu)具有良好的通用性, 對同類系統(tǒng)的報表管理服務(wù)具有一定的參考價值, 有良好的應(yīng)用前景. 今后主要的研究工作內(nèi)容為: 完善服務(wù)層協(xié)議棧中的協(xié)議標準, 并對系統(tǒng)的并發(fā)性問題進行進一步優(yōu)化.

1 劉金雨.中式報表的特點和設(shè)計.程序員,2008,(7):128–128.

2 Carter S. The New Language of Business SOA & Web 2.0. IBM Press, 2007.

3 Satzinger JW, Jackson RB, Burd SD. Systems analysis and design in a changing world. Cengage Learning EMEA, 2008.

4 吳曉,呂爽,馬新強.基于SOA 的企業(yè)應(yīng)用集成研究.信息技術(shù),2007,4:28–36.

5 Roy W, Schulte YV, et al. Service Oriented Architectures. 1996. http://www.gartner.com/Display-Document?id= 302868.

6 Krafzig D, Banke K, Slama D. Enterprise SOA: Service- Oriented Architecture Best Practices. USA, Prentice Hall PTR, 2004: 41–59.

Research and Implementation of SOA Frame in the Liaohe River Basin Reporting Management System

ZHAO Yang1,2, GUAN Ning1,2, WANG Jun-Lin3

1(University of Chinese Academy of Sciences, Beijing 100049, China)2(Shenyang Institute of Computing Technology, Chinese Academy of Sciences, Shenyang 110168, China)3(School of Software Technology, Dalian University of Technology, Dalian 116620, China)

Reporting service is one of the core business requirements in the water environment managing system of Liaohe River Basin. With the expansion of the scope of the water environment management and the diversification of the demand for reporting service, the existing decentralized statements management methods can hardly satisfy the user’s actual needs. Aiming at reporting actual business needs problems in the heterogeneous system and binding SOA architecture model’s characteristic of loosely coupled, reusability etc., this paper proposed a reporting management system based on SOA architecture. According to analyzing the business core functions and processes, the corresponding service model is established. Based on the composition of different services and calling, this paper implements the reporting management system which supports multi-system concurrent accessing.

service-oriented architecture (SOA); reporting management system; service; service model

國家水體污染控制與治理科技重大專項(2012ZX07505003)

2016-06-21;

2016-07-25

[10.15888/j.cnki.csa.005648]

猜你喜歡
請求者數(shù)據(jù)源報表
基于D2D 多播通信的合作內(nèi)容下載機制
群智感知中基于云輔助的隱私信息保護機制
LabWindows/CVI中Excel報表技術(shù)研究
漢語自然會話中請求行為的序列結(jié)構(gòu)
Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
從三大報表讀懂養(yǎng)豬人的成績單
基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
基于差值誘導(dǎo)的Web服務(wù)評價可信度的評估
基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
分布式異構(gòu)數(shù)據(jù)源標準化查詢設(shè)計與實現(xiàn)
崇阳县| 宜都市| 太保市| 新和县| 拉孜县| 安义县| 石棉县| 当涂县| 聂拉木县| 南丰县| 永川市| 陈巴尔虎旗| 班玛县| 营口市| 友谊县| 民权县| 珠海市| 大新县| 长沙市| 龙游县| 石楼县| 资讯 | 同江市| 永城市| 南安市| 桃园市| 蒙阴县| 曲周县| 武鸣县| 石家庄市| 甘德县| 巴林右旗| 潼关县| 通辽市| 卢湾区| 宁阳县| 苍梧县| 宝鸡市| 涪陵区| 云梦县| 旌德县|