摘 要:【目的】為解決現(xiàn)有災(zāi)害管理系統(tǒng)功能完善度低等問題,提高災(zāi)害信息管理水平,基于Springboot框架,設(shè)計(jì)并實(shí)現(xiàn)一個(gè)地質(zhì)災(zāi)害調(diào)查管理系統(tǒng)?!痉椒ā恳訫ySQL為后臺(tái)數(shù)據(jù)存儲(chǔ)平臺(tái),采用SpringMAC、Spring、MyBatis進(jìn)行Java Web開發(fā),并基于Springboot框架與數(shù)據(jù)庫進(jìn)行交互?!窘Y(jié)果】通過對(duì)數(shù)據(jù)交互方式的合理設(shè)計(jì),不僅實(shí)現(xiàn)了災(zāi)害信息的存儲(chǔ)記錄及可視化操作,還實(shí)現(xiàn)了災(zāi)害數(shù)據(jù)統(tǒng)計(jì)及綜合分析功能。【結(jié)論】該地質(zhì)災(zāi)害調(diào)查管理系統(tǒng)具有一定的可拓展性,能提高災(zāi)害調(diào)查相關(guān)單位決策水平,減小財(cái)產(chǎn)損失。
關(guān)鍵詞:地質(zhì)災(zāi)害管理系統(tǒng);Springboot;MySql;Vue.js;MyBatis
中圖分類號(hào):P694" " " 文獻(xiàn)標(biāo)志碼:A" " "文章編號(hào):1003-5168(2024)22-0032-05
DOI:10.19968/j.cnki.hnkj.1003-5168.2024.22.007
Design and Implementation of a Geological Hazard Investigation and Management System Based on Springboot
Abstract:[Purposes] Based on the Springboot framework, this paper designs and implements a geological disaster investigation and management system to solve the problem of low completeness of existing disaster management systems and improve the level of disaster information management. [Methods] Based on MySQL as the backend data storage platform, this paper uses SpringMAC, Spring, MyBatis for Java Web development, and interacts with the database based on the Springboot framework. [Findings] Through the reasonable design of data exchange methods, the storage, recording, and visualization of disaster information have been achieved, and further functions of disaster data statistics and comprehensive analysis have been achieved. [Conclusions] The geological disaster investigation and management system based on the above methods has certain scalability, which can improve the decision-making level of disaster investigation related units and reduce property losses.
Keywords: geological hazard management system; Springboot; MySql; Vue.js; MyBatis
0 引言
我國是地質(zhì)災(zāi)害頻發(fā)的國家之一,災(zāi)害類型多樣,季節(jié)性明顯,并在時(shí)空分布上有一定的規(guī)律性,且具有災(zāi)害危害大、治理防范難度大等特點(diǎn)[1]。在面對(duì)地質(zhì)災(zāi)害時(shí),及時(shí)準(zhǔn)確地獲取并有效管理災(zāi)害信息,對(duì)降低災(zāi)害損失、保護(hù)人民生命財(cái)產(chǎn)安全具有至關(guān)重要的意義。因此,建立一套高效、智能的地質(zhì)災(zāi)害管理系統(tǒng)已迫在眉睫。
過去的災(zāi)害管理系統(tǒng)功能完善度低,以某省地質(zhì)災(zāi)害綜合錄入采集系統(tǒng)為例,其界面復(fù)雜、操作流程煩瑣,導(dǎo)致災(zāi)害管理人員依然使用本地?cái)?shù)據(jù)進(jìn)行處理,且存在數(shù)據(jù)備份文件冗余、數(shù)據(jù)一致性差、系統(tǒng)魯棒性低、查找困難、維護(hù)成本高等缺點(diǎn)。劉清[2]基于Access、excel、VB6.0軟件設(shè)計(jì)出交通災(zāi)害預(yù)警管理系統(tǒng);賈超[3]實(shí)現(xiàn)了基于GIS的地質(zhì)災(zāi)害管理系統(tǒng)設(shè)計(jì)與開發(fā)。但現(xiàn)有的系統(tǒng)存在數(shù)據(jù)庫完整性不足、系統(tǒng)性能不穩(wěn)定、用戶界面設(shè)計(jì)不友好等問題。而基于Springboot框架的配置構(gòu)建過程具有迅速、無縫集成測(cè)試等特點(diǎn),部分研究團(tuán)隊(duì)使用該框架進(jìn)行系統(tǒng)開發(fā),劉金帥等[4]實(shí)現(xiàn)了基于SpringBoot和WebSocket的實(shí)時(shí)電力數(shù)據(jù)可視化系統(tǒng)。為響應(yīng)落實(shí)國家相關(guān)部門提出的要全面建成地質(zhì)災(zāi)害調(diào)查評(píng)價(jià)體系、監(jiān)測(cè)預(yù)警體系、防治體系和應(yīng)急體系的地質(zhì)災(zāi)害防治目標(biāo)要求,本研究基于idea技術(shù)和MySQL數(shù)據(jù)庫,設(shè)計(jì)并實(shí)現(xiàn)了基于Springboot框架的地質(zhì)災(zāi)害管理系統(tǒng),為相關(guān)機(jī)構(gòu)提供地質(zhì)災(zāi)害智能化管理解決方案,提高災(zāi)害管理效率及質(zhì)量。
1 系統(tǒng)需求分析
1.1 功能需求
該系統(tǒng)應(yīng)解決地質(zhì)災(zāi)害信息調(diào)查的管理及存儲(chǔ)問題,并能實(shí)現(xiàn)多種災(zāi)害信息的網(wǎng)格化查詢與處理。具體需求功能有用戶身份驗(yàn)證、用戶管理、信息記錄添加、信息校核維護(hù)、信息查詢及處理等。
1.2 功能模塊
根據(jù)上述功能需求設(shè)計(jì)不同功能模塊,每個(gè)模塊實(shí)現(xiàn)一個(gè)或多個(gè)相關(guān)功能,主要模塊有系統(tǒng)管理、項(xiàng)目管理、調(diào)查人員管理、內(nèi)業(yè)人員管理、校核人員管理、管理人員管理、災(zāi)害信息管理,具體細(xì)分模塊見表1。
1.3 非功能需求
非功能需求有兼容性需求、安全性需求、可維護(hù)性需求、性能需求、合規(guī)性需求等。
2 系統(tǒng)架構(gòu)設(shè)計(jì)及實(shí)現(xiàn)
系統(tǒng)前端開發(fā)基于HTML、CSS、Javascript構(gòu)建,系統(tǒng)采用分層架構(gòu)設(shè)計(jì),包括表示層、邏輯層、訪問層和數(shù)據(jù)存儲(chǔ)層。表示層使用Vue.js技術(shù)[5],方便用戶實(shí)現(xiàn)災(zāi)害信息錄入等操作;邏輯層基于Springboot框架來實(shí)現(xiàn)數(shù)據(jù)的增刪改查及統(tǒng)計(jì)等處理;訪問層通過集成MyBatis框架實(shí)現(xiàn)對(duì)災(zāi)害數(shù)據(jù)的存儲(chǔ)與訪問;存儲(chǔ)層采用MySQL作為后端數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)系統(tǒng)所有數(shù)據(jù)的存儲(chǔ)工作,系統(tǒng)架構(gòu)如圖1所示。
2.1 各結(jié)構(gòu)層設(shè)計(jì)
表示層提供直觀友好的用戶界面與用戶交互,包含項(xiàng)目管理界面、災(zāi)害信息類型界面。災(zāi)害信息類型界面提供七個(gè)基本災(zāi)害類型[5]、一個(gè)普遍調(diào)查類型和一個(gè)可自定義類型,分別為滑坡調(diào)查信息、崩塌調(diào)查信息、泥石流調(diào)查信息、地裂縫調(diào)查信息、地面塌陷調(diào)查信息、地面沉降調(diào)查信息、斜坡調(diào)查信息、地質(zhì)環(huán)境調(diào)查點(diǎn)信息和自定義類型;信息錄入界面包括信息校核界面、管理界面。用戶登錄模塊作為系統(tǒng)的入口,采用Spring Security框架實(shí)現(xiàn)用戶身份驗(yàn)證,該模塊先配置Spring Security,定義認(rèn)證管理器,并通過實(shí)現(xiàn)UserDetailsService從數(shù)據(jù)庫中加載用戶信息。用戶在登錄時(shí),系統(tǒng)通過BCryptPasswordEncoder進(jìn)行密碼加密,驗(yàn)證用戶身份。
邏輯層負(fù)責(zé)項(xiàng)目流程和災(zāi)害數(shù)據(jù)的統(tǒng)一處理,可實(shí)現(xiàn)的功能有調(diào)查信息管理、數(shù)據(jù)統(tǒng)計(jì)管理等。
訪問層負(fù)責(zé)與數(shù)據(jù)庫進(jìn)行交互,實(shí)現(xiàn)對(duì)地質(zhì)災(zāi)害調(diào)查數(shù)據(jù)的存儲(chǔ)及訪問,包含的數(shù)據(jù)庫表結(jié)構(gòu)有項(xiàng)目信息表、信息調(diào)查表,負(fù)責(zé)存儲(chǔ)災(zāi)害信息(包括坐標(biāo)、產(chǎn)狀、工程地質(zhì)條件、水文地質(zhì)條件、災(zāi)害點(diǎn)照片、調(diào)查人員等);信息統(tǒng)計(jì)表包括記錄時(shí)間,數(shù)據(jù)統(tǒng)計(jì)等。
系統(tǒng)數(shù)據(jù)庫抽象用戶、項(xiàng)目、災(zāi)害類型等實(shí)體,并定義其屬性關(guān)系,遵循規(guī)范化原則提高數(shù)據(jù)一致性,實(shí)體ER圖如圖2所示。
2.2 系統(tǒng)開發(fā)技術(shù)工具
Springboot是一個(gè)用于創(chuàng)建獨(dú)立的、基于Spring框架的應(yīng)用程序的開發(fā)框架,其簡化了Spring應(yīng)用程序的開發(fā)過程,并提供了一種快速構(gòu)建應(yīng)用的方式,通過自動(dòng)配置和約定優(yōu)于配置的原則,能大大減少災(zāi)害調(diào)查系統(tǒng)在配置上的工作量。
MySQL是一種常用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),是一種基于客戶端—服務(wù)器模型的數(shù)據(jù)庫系統(tǒng),被廣泛應(yīng)用于Web應(yīng)用程序開發(fā)和大規(guī)模數(shù)據(jù)存儲(chǔ)等領(lǐng)域,可存儲(chǔ)災(zāi)害調(diào)查數(shù)據(jù),并實(shí)現(xiàn)災(zāi)害信息和承災(zāi)點(diǎn)的可持續(xù)管理。
HTML使用一種類似于XML的語法結(jié)構(gòu),通過使用標(biāo)簽和屬性來定義網(wǎng)頁結(jié)構(gòu)和內(nèi)容。每個(gè)HTML標(biāo)簽都有特定的含義和作用,可用來表示不同類型的元素,能直觀地展示出災(zāi)害點(diǎn)的不同信息。
JavaScript是一種高級(jí)的、動(dòng)態(tài)的、面向?qū)ο蟮木幊陶Z言,通常用于在網(wǎng)頁上添加交互性和動(dòng)態(tài)效果。作為一種客戶端腳本語言,JavaScript主要運(yùn)行在Web瀏覽器中,并與HTML和CSS一起構(gòu)建交互式的信息頁,基于該技術(shù)可實(shí)現(xiàn)災(zāi)害信息(如水文地質(zhì)條件、工程地質(zhì)條件)的錄入。
2.3 災(zāi)害信息數(shù)據(jù)處理
我國地質(zhì)災(zāi)害等級(jí)高、強(qiáng)度大,并會(huì)誘發(fā)出災(zāi)害鏈 [6]。傳統(tǒng)的災(zāi)害管理系統(tǒng)往往只對(duì)災(zāi)害信息進(jìn)行機(jī)械性記錄與轉(zhuǎn)發(fā),本研究設(shè)計(jì)的系統(tǒng)是基于災(zāi)害信息處理、可視化及分層架構(gòu)設(shè)計(jì)來實(shí)現(xiàn)的,邏輯設(shè)計(jì)包括s_Time和s_Data工作表,實(shí)現(xiàn)對(duì)原生災(zāi)害和次生災(zāi)害的同時(shí)記錄,數(shù)據(jù)反饋界面如圖3所示。
3 系統(tǒng)測(cè)試與評(píng)估
本研究對(duì)該系統(tǒng)進(jìn)行了全面的測(cè)試,包括功能測(cè)試和性能測(cè)試兩個(gè)方面。功能測(cè)試旨在評(píng)估系統(tǒng)在各種應(yīng)用情景下的穩(wěn)定性和功能完整性,確保用戶能順利地進(jìn)行災(zāi)害信息的錄入、管理和查詢,包括對(duì)系統(tǒng)各項(xiàng)功能模塊的單元測(cè)試和集成測(cè)試及模擬實(shí)際使用場(chǎng)景的端到端測(cè)試,本研究重點(diǎn)評(píng)估了用戶界面的友好性和易用性;性能測(cè)試旨在評(píng)估該系統(tǒng)在高負(fù)載和大數(shù)據(jù)量情況下的表現(xiàn),包括響應(yīng)時(shí)間、并發(fā)處理能力及資源利用率等指標(biāo)。通過上述測(cè)試,確保系統(tǒng)能在各種情況下保持穩(wěn)定和高效運(yùn)行。系統(tǒng)的主要運(yùn)行界面如圖4所示。
4 結(jié)語
本研究基于Springboot框架,以MySql為底層數(shù)據(jù)庫,前端基于HTML、CSS、Javascript,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)的地質(zhì)災(zāi)害調(diào)查管理系統(tǒng)。該系統(tǒng)具備靈活、實(shí)時(shí)、多維度的功能特點(diǎn),能幫助相關(guān)機(jī)構(gòu)有效管理和應(yīng)對(duì)災(zāi)害情況,并具備一定程度的災(zāi)害鏈數(shù)據(jù)分析能力,在技術(shù)上實(shí)現(xiàn)了預(yù)期目標(biāo)。未來,可進(jìn)一步完善該系統(tǒng)的功能,提高系統(tǒng)性能和穩(wěn)定性,以滿足用戶的更多需求和挑戰(zhàn)。
參考文獻(xiàn):
[1]梁高,張曉蕾,凌雪,等.2009—2019年我國地質(zhì)災(zāi)害時(shí)空特征分析[J].防災(zāi)減災(zāi)學(xué)報(bào),2021,37(3):58-64.
[2]劉清.高速公路交通災(zāi)害預(yù)警管理系統(tǒng)研究[D].武漢:武漢理工大學(xué),2004.
[3]賈超.基于GIS的地質(zhì)災(zāi)害管理系統(tǒng)設(shè)計(jì)與開發(fā)[J].測(cè)繪與空間地理信息,2023,46(10):114-117.
[4]劉金帥,葛明濤,胡海峰,等.基于SpringBoot和WebSocket的實(shí)時(shí)電力可視化系統(tǒng)的研究與實(shí)現(xiàn)[J].河南科技,2024,51(7):10-13.
[5]朱二華.基于Vue.js的Web前端應(yīng)用研究[J].科技與創(chuàng)新,2017(20):119-121.
[6]段永侯.我國地質(zhì)災(zāi)害的基本特征與發(fā)展趨勢(shì)[J].第四紀(jì)研究,1999(3):208-216.