?

基于B/S 的行政區劃界線界樁地名信息系統設計與實現

2024-01-23 07:32郭星濤彭蓮香
物聯網技術 2024年1期
關鍵詞:界樁行政區劃界線

郭星濤,彭蓮香

(內蒙古自治區大數據中心,內蒙古 呼和浩特 010010)

0 引 言

行政區劃是國家為便于行政管理而分級劃分的區域,中華人民共和國的行政區劃由省級行政區、地級行政區、縣級行政區、鄉級行政區組成。行政區劃界線界樁是指由行政區域毗鄰的各方人民政府共同埋設并用于指示行政區域界線實地位置的標志物[1]。

地名是中華民族文明史的特殊記錄與見證,是傳承優秀傳統文化的重要載體。地名管理應當有利于維護國家主權和民族團結,有利于弘揚社會主義核心價值觀,有利于推進國家治理體系和治理能力現代化,有利于傳承發展中華優秀文化。使用標準地名可以在服務群眾生活、社會治理、科學研究、國防建設等方面起到積極作用[2-3]。

為進一步提高行政區劃界線界樁管理工作的信息化水平,推廣標準地名的大眾普及率,充分利用物聯網、北斗系統等新技術,設計開發了基于B/S 架構的行政區劃界線界樁地名信息系統,實現了多項技術融合應用于行政區劃管理和地名服務工作,提高了管理服務的信息化、智能化和便捷化水平。

1 系統架構與開發平臺

1.1 B/S 架構

B/S 架構即瀏覽器和服務器架構模式[4-6],是Web 興起后的一種網絡架構模式,Web 瀏覽器是客戶端最主要的應用軟件[7]。這種模式統一了客戶端,將系統功能實現的核心部分集中到服務器上,簡化了系統的開發、維護和使用。在B/S 結構中,每個節點都分布在網絡上,這些網絡節點可以分為瀏覽器端、服務器端和中間件,通過它們之間的鏈接和交互來完成系統的功能任務。三個層次的劃分是從邏輯上進行的,在實際應用中多根據實際物理網絡進行不同的物理劃分??傊?,B/S 結構就是將數據分布到某個數據服務器,將程序分布到應用(程序)服務器或者Web服務器,而客戶端(瀏覽器)只需要加載應用服務器的部分程序,用于數據的顯示和命令輸入,如圖1 所示。

1.2 MVVM 模式

MVVM 是前端視圖層的概念,主要關注于視圖層分離,它把前端的視圖層分為三部分: Model、View、ViewModel(VM)。它是一種軟件架構設計模式,是一種簡化用戶界面的事件驅動編程方式,提供了數據的雙向綁定。在MVVM架構中,是不允許數據和視圖直接通信的,只能通過ViewModel來通信,而ViewModel就是定義了一個Observer觀察者。ViewModel 是連接View 和Model 的中間件,具有低耦合、可復用、獨立開發、可測試等特點,具體如圖2 所示。

圖2 MVVM 架構

1.3 MVC 模式

MVC 是后端的分層開發概念,如圖3 所示。以系統采用的后端NodeJs 語言為例,前端的View 視圖層通過后端app.js 進行請求處理;然后調用router.js 進行路由分發,如果涉及業務邏輯處理操作,則調用controller 模塊進行業務處理,業務處理過程中如果涉及數據的CRUD,則調用Model層進行數據庫操作,其中路由分發與業務邏輯處理位于controller 層。

圖3 MVC 模式

1.4 Vue 和Express 框架

Vue是一套用于構建用戶界面的漸進式輕量級JavaScript框架。最核心的功能包括組件化開發和響應式的雙向數據綁定。除此之外還有前端MVVM 模式、虛擬DOM、前后端分離部署等優勢。Vue 框架采用自底向上增量開發的設計,通過與Vue 生態系統的支持和第三方庫的整合,可以為復雜的單頁面應用(SAP)提供驅動。相較于其他框架,Vue 具有學習難度低、易使用、開發效率高等優點。

Express 是一個保持最小規模的、靈活的 Node.js Web 應用程序開發框架,提供了一系列強大的特性來幫助開發者創建各種Web 應用,主要有以下特性:開發快速、靈活的拓展機制、使用簡單、支持路由和多模塊[8-9]。

1.5 基于北斗系統的物聯網技術

物聯網(Internet of Things, IoT)是一個基于互聯網、傳統電信網的信息承載體,讓所有能夠被獨立尋址的普通物理對象之間形成互聯互通的網絡,可以被視為互聯網的延伸和擴展。人們通過物聯網的應用可以獲得一個新的溝通維度,即從任何時間、任何地點的人與人的溝通聯接擴展到人與物、物與物之間的溝通聯接,其架構可劃分為感知層、網絡層、應用層[10]。

北斗系統本質上是全球化的天基時空基準,是構建信息社會必不可少的信息來源和信息提供者,北斗系統提供的精準時間和位置信息可為廣泛的用戶提供定時、授時、授頻等全天候、全天時可感知信息,是信息時代最為核心的關鍵基礎數據。

通過將北斗系統取得的位置點、位置關系、時間統一和時空分析這些時空元素與物聯網有機結合,必將對萬物互聯的智能時代起到巨大的支撐和推進作用,由北斗高精度服務提供的時空信息也必將成為智能化進程中的重要推動力。

1.6 系統開發平臺

行政區劃界線界樁地名信息系統的開發平臺為Visual Studio Code,前端頁面使用VueJs 框架、OpenLayers 開源前端GIS 庫、Element 組件庫、ECharts 開源可視化圖表庫等進行快速開發,后臺使用NodeJs 語言,數據庫使用PostGIS 空間數據庫和MongoDB 非關系型數據庫,地圖服務器使用免費開源的GeoServer。前后端認證使用Json Web Token 進行認證鑒定。

2 系統設計與分析

2.1 系統設計開發流程

系統的設計開發共分為6 個環節,如圖4 所示,包括需求分析及現狀調查、確定系統架構和技術路線、設計功能與界面、搭建開發環境、開發和測試、部署與應用等。

圖4 系統設計流程

2.2 系統功能模塊

系統設計包括行政區劃、地名地址、界樁、北斗定位設備、通用地圖、設置共6 個模塊,包括15 個功能點,如圖5 所示。

圖5 系統功能模塊

2.3 行政區劃模塊

行政區劃模塊主要包含了省市縣鄉四級查詢、行政區劃界線展示、轄區情況與歷史沿革三大功能。行政區劃查詢支持省市縣鄉四級選擇欄和地圖雙擊選擇,行政區劃界線包含省市縣鄉四級矢量要素的空間數據庫、地圖服務接口以及前端配置樣式后的地圖圖層等一系列數據資源支撐。轄區情況與歷史沿革支持選中某一級行政區劃后的詳細信息和歷史沿革展示,例如政府駐地、轄屬政區、行政區劃代碼、人口數量、設立年份等信息,行政區劃地名羅馬字母拼音、少數民族語言拼寫、地名含義及歷史沿革等信息。

2.4 地名地址模塊

地名地址模塊包含地名地址庫調用、地名地址查詢展示兩大功能。其中,地名地址庫使用民政部主管的中國·國家地名信息庫的接口服務,地名地址查詢展示支持搜索、列表分頁展示、地圖上的地名標識和詳細信息,主要數據項為地名地址相冊、羅馬拼音、來歷和歷史等信息。

2.5 界樁模塊

界樁模塊包含界樁數據管理與展示、圖表統計分析兩大功能。界樁數據分為省、縣、鄉三級,平臺可支持界樁數據的錄入、修改、刪除等操作,支持界樁數據地圖圖層顯示、點擊顯示詳細信息等操作,支持按行政區劃統計界樁類型、材質以及相鄰地區分布等圖表展示。

2.6 北斗定位設備模塊

北斗定位設備模塊包含設備綁定與數據展示、設備異常處理與記錄、設備軌跡地圖展示三大功能。北斗定位設備支持實時返回經度、緯度、角度X、角度Y及振動入侵等參數,通過將其與界樁綁定,可充分利用物聯網、北斗定位等新技術來實現界樁的信息化管理,同時平臺支持設備參數值異常報警、處理、記錄等功能,并支持設備移動軌跡展示。

2.7 設置模塊

設置模塊包含管理員身份設置。訪問平臺登錄須輸入管理員賬號和密碼,平臺所有頁面均設置了訪問權限。

2.8 數據庫及HTTP 接口設計

數據庫主要包含空間數據庫PostGIS 和非關系型數據庫MongoDB。其中,行政區劃界線和界樁等矢量數據借助ArcGIS 10.2 軟件連接postgresql 創建并操作PostGIS 空間數據庫來實現;地圖服務使用GeoServer 進行發布。矢量數據的屬性表內容見表1 所列。MongoDB 數據庫以類似Json 的bjson 格式來存放行政區劃基本信息和歷史沿革、管理員賬號和密碼信息,見表2 所列。

表1 PostGIS 數據庫設計

表2 MongoDB 數據庫設計

HTTP 接口服務主要包含地圖API 和數據API。其中地圖API 包括兩類:一是依據OGC WMTS 標準的天地圖矢量、影像及地形等切片地圖服務;二是依據WFS 標準、通過GeoServer 發布的行政區劃界線界樁的網絡要素服務。數據API 是指調用中國·國家地名信息庫的公開接口服務中的地名搜索、詳情及字符串解密等。具體項見表3 所列。

表3 HTTP 接口服務表

2.9 接口鑒權設計

系統的客戶端與服務端的跨域認證采用Json Web Token(JWT)。JWT 的原理是在服務器對用戶名和密碼驗證成功后,由服務器生成一個Json 對象,并對其簽名加密生成Token 返回給客戶端。在之后的請求中,客戶端將這個Token 放于HTTP 請求頭中發送給服務端,一般是將它放入HTTP 請求的Header Authorization 字段中,服務端對Token 進行解析,并驗證其中的信息,包括用戶名、密碼、有效期等。若驗證成功,返回相應狀態碼,否則返回錯誤信息。

3 系統功能實現

3.1 涉及的相關技術

系統涉及的相關技術見表4 所列,共有前端、后端、地圖服務器以及數據庫四部分內容。

表4 涉及的相關技術

3.2 功能模塊實現與應用

本文以內蒙古自治區行政區劃界線數據、基本情況和歷史沿革等信息、基于內蒙古自治區界線等距離生成的隨機點和屬性信息作為界樁數據來實現功能模塊、驗證系統的運行效果。內蒙古自治區共有12 個地級行政區劃、103 個縣級行政區劃(旗縣區)、1 024 個鄉級行政區劃(街道、鄉鎮、蘇木)。

服務器上安裝ArcGIS、PostGIS、MongoDB 軟件存儲界線界樁及管理員身份數據,GeoServer 設置服務地址并發布界線界樁服務,NodeJs 設置地址并發布后端服務,VueJs 啟動前端項目并聯通天地圖、中國·國家地名信息庫、北斗定位模塊的接口,完成系統部署。部分源代碼片段如圖6 ~圖7 所示。

圖6 獲取要素地圖服務算法

圖7 獲取北斗定位設備信息

行政區劃基本情況與歷史沿革、界樁錄入、北斗定位設備參數、地圖測距測面等功能界面如圖8 ~圖11 所示。

圖8 行政區劃基本情況與歷史沿革

圖9 界樁數據錄入與設備綁定

圖10 北斗定位設備參數值

圖11 測距測面工具

4 結 語

本文利用B/S 架構,使用VueJs 和NodeJs 搭建前后端分離項目,建立JWT 的前后端身份認證機制,同時結合ArcGIS、PostGIS、GeoServer 及OpenLayers 等技術實現地理信息系統的落地,設計并實現了具有地圖、可視化圖表、北斗定位應用等功能的行政區劃界線界樁地名信息系統。系統運行穩定,實現了行政界線界樁的信息化管理以及地名的推廣應用,為民政部門關于行政區劃的信息化建設提供了借鑒,同時為不同政務部門業務融合服務提供了基礎數據。但是對于服務界樁管理一線工作者的便捷性不足以及數據糾錯等問題,還有待進一步研究。

猜你喜歡
界樁行政區劃界線
智慧界樁在水利工程中的應用實踐
大中型水庫界樁設置及制作安裝建議
The Beasts Within
有界線性算子的Drazin逆的逆序律
中國行政區劃的前世今生
關于進一步加強行政區域界線管理維護邊界地區社會穩定的意見
黃壁莊水庫庫區界樁勘查綜述
婚姻的智慧,是分寸和界線
河北省行政區劃
河北省行政區劃
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合