楊昆
摘要:氣象保障是各級(jí)政府的一項(xiàng)重要職責(zé),是保障民生的重要手段。在氣象保障政策和相關(guān)實(shí)施細(xì)則的落實(shí)過(guò)程中,由于任務(wù)過(guò)多審查任務(wù)量大,手工實(shí)現(xiàn)不僅效率低且容易出錯(cuò)。同時(shí),由于缺乏有效的信息管理手段,造成部門間缺乏信息溝通,使得過(guò)程中的資格審核和批準(zhǔn)缺乏科學(xué)性和規(guī)范性。因此,實(shí)行氣象保障信息化全過(guò)程管理是解決目前問(wèn)題的有效途徑。
關(guān)鍵詞:氣象保障;JavaEE;JSF;Spring;JPA
中圖分類號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)12-0127-02
0 引言
隨著城鎮(zhèn)人口的不斷增加,城鎮(zhèn)化的建設(shè)速度不斷加快,氣象保障也隨之蓬勃發(fā)展。當(dāng)前,隨著城區(qū)居民人數(shù)的增加,氣象服務(wù)的業(yè)務(wù)量也迅速增大,對(duì)現(xiàn)有的保障管理水平提出了更高要求。實(shí)施氣象保障信息化已迫在眉睫。
為了適應(yīng)信息化的形勢(shì),數(shù)字保障、數(shù)字城市等概念相繼被提出。[1]采用計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù),對(duì)氣象保障的過(guò)程進(jìn)行信息化建設(shè)和監(jiān)管已成為氣象保障領(lǐng)域新的研究熱點(diǎn)。
氣象數(shù)字保障的核心是利用計(jì)算機(jī)和各種信息化技術(shù),對(duì)氣象保障業(yè)務(wù)的流程和數(shù)據(jù)進(jìn)行規(guī)范處理和存儲(chǔ),使管理環(huán)節(jié)中的信息能迅速、快捷和完整的找到,提高幫的效率和管理的透明性。
1 氣象保障管理系統(tǒng)設(shè)計(jì)
根據(jù)系統(tǒng)的需求,確定系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)。
在市局和所轄區(qū)局網(wǎng)絡(luò)連通的情況下,氣象保障綜合管理系統(tǒng)需要數(shù)據(jù)庫(kù)服務(wù)器和應(yīng)用服務(wù)器各一臺(tái),以及配備各類必需設(shè)備(二代身份證讀卡器、條碼掃描器、高拍儀等)的業(yè)務(wù)處理所需的市局業(yè)務(wù)終端和區(qū)局業(yè)務(wù)終端若干,同時(shí)配備市局管理終端完成系統(tǒng)管理功能。
此外,若要對(duì)業(yè)務(wù)檔案進(jìn)行數(shù)字化處理,可根據(jù)需求選配網(wǎng)絡(luò)存儲(chǔ)設(shè)備以儲(chǔ)存大量的圖片文件。
2 總體架構(gòu)
多層的軟件系統(tǒng)架構(gòu)已經(jīng)被證明比沒有業(yè)務(wù)邏輯層的客戶-服務(wù)器系統(tǒng)具有更多的可升級(jí)性和柔韌性。[2]因此,氣象保障系統(tǒng)的總體架構(gòu)采用三層結(jié)構(gòu),如圖1所示。
各層次的功能如下:
(1)表示層。表示層是用戶與應(yīng)用程序的接口。該層提供豐富的網(wǎng)頁(yè)界面,通過(guò)網(wǎng)頁(yè)接收用戶的請(qǐng)求,然后調(diào)用業(yè)務(wù)層的功能,將結(jié)果返給用戶。
(2)業(yè)務(wù)層。由于氣象保障業(yè)務(wù)紛繁復(fù)雜,有必要把整個(gè)業(yè)務(wù)操作獨(dú)立出來(lái)。該層根據(jù)展示層發(fā)過(guò)來(lái)的業(yè)務(wù)請(qǐng)求,通過(guò)與持久層進(jìn)行交互,執(zhí)行相應(yīng)的業(yè)務(wù)功能模塊,返回結(jié)果。同時(shí),該層還提供系統(tǒng)級(jí)的其它功能,如事務(wù)處理、日志記錄、訪問(wèn)安全控制等。
(3)數(shù)據(jù)層。該層主要負(fù)責(zé)系統(tǒng)數(shù)據(jù)的持久化操作。
3 系統(tǒng)的詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)
3.1 采用JavaEE技術(shù)實(shí)現(xiàn)系統(tǒng)的三層體系結(jié)構(gòu)設(shè)計(jì)方案
(1)表示層。表示層接受用戶輸入,將其傳給業(yè)務(wù)層,并將業(yè)務(wù)層的返回結(jié)果呈現(xiàn)給用戶。由于JSF適合于MVC架構(gòu)的應(yīng)用,因此,用JSF來(lái)實(shí)現(xiàn)展示層。
JSF為開發(fā)人員提供了網(wǎng)頁(yè)的編程接口,并提供了豐富的頁(yè)面組件以及完善的事件處理模型,方便于用戶交互界面的創(chuàng)建。[3]
JSF中含有managed bean(管理Bean)和backing bean(支持Bean)[6],前者是可被JSF管理的JavaBean,它具體的業(yè)務(wù)功能無(wú)關(guān);后者定義web頁(yè)面組件的屬性和功能。
(2)業(yè)務(wù)層。系統(tǒng)中的具體業(yè)務(wù)功能在業(yè)務(wù)層實(shí)現(xiàn)。該層采用Spring框架,在其應(yīng)用上下文中對(duì)Hibernate會(huì)話工廠和JDBC數(shù)據(jù)源進(jìn)行配置。
(3)數(shù)據(jù)層。包含了數(shù)據(jù)持久接口和數(shù)據(jù)庫(kù)。
3.2 系統(tǒng)安全方案
為了實(shí)現(xiàn)系統(tǒng)的完全,從網(wǎng)絡(luò)安全、數(shù)據(jù)安全、系統(tǒng)運(yùn)行安全以及身份認(rèn)證機(jī)制等方面保障。
3.2.1 網(wǎng)絡(luò)安全
保證網(wǎng)絡(luò)安全就是防止外部通過(guò)網(wǎng)絡(luò)對(duì)系統(tǒng)的非法入侵。采用的技術(shù)包括隔離網(wǎng)閘、防火墻、入侵監(jiān)測(cè)、漏洞掃描等。[4]
在系統(tǒng)的方案中,內(nèi)網(wǎng)處于系統(tǒng)的最內(nèi)層,與其直接相聯(lián)的只有內(nèi)部用戶,內(nèi)網(wǎng)與外網(wǎng)通過(guò)網(wǎng)閘實(shí)現(xiàn)物理隔離,確保不會(huì)有任何非法訪問(wèn)經(jīng)由外網(wǎng)進(jìn)入到系統(tǒng),而外網(wǎng)與互聯(lián)網(wǎng)之間又采用了防火墻、入侵監(jiān)測(cè)、漏洞掃描、防殺毒等安全措施以保證外網(wǎng)也具有相應(yīng)的安全性。信息交換平臺(tái)通過(guò)專線方式與其他政務(wù)專網(wǎng)連接,采用防火墻隔斷非法訪問(wèn)。
3.2.2 數(shù)據(jù)安全
保證數(shù)據(jù)安全就是要防止外部非法訪問(wèn)涉密數(shù)據(jù)。[5]
所用的技術(shù)有數(shù)字簽名、身份認(rèn)證、數(shù)據(jù)備份、數(shù)據(jù)加密等。
內(nèi)網(wǎng)存放著核心的業(yè)務(wù)數(shù)據(jù),采用數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限控制和統(tǒng)一用戶認(rèn)證可以保證不同角色的系統(tǒng)用戶進(jìn)行數(shù)據(jù)訪問(wèn)的級(jí)別。
外網(wǎng)的數(shù)據(jù)是內(nèi)網(wǎng)數(shù)據(jù)的子集,只包含可對(duì)外發(fā)布的信息,這些數(shù)據(jù)由數(shù)據(jù)交換與同步系統(tǒng)從業(yè)務(wù)數(shù)據(jù)庫(kù)中生成,然后經(jīng)由隔離網(wǎng)閘同步到外網(wǎng)。對(duì)于外網(wǎng)數(shù)據(jù),除了向公眾發(fā)布的信息外,與個(gè)體相關(guān)的數(shù)據(jù)需要經(jīng)過(guò)身份認(rèn)證方可訪問(wèn)。
3.2.3 系統(tǒng)運(yùn)行安全
保證系統(tǒng)運(yùn)行的安全,就是要保證系統(tǒng)可靠的運(yùn)行。采用的技術(shù)包括防殺毒、雙機(jī)熱備等。對(duì)于系統(tǒng)中最為關(guān)鍵的數(shù)據(jù)庫(kù)服務(wù)器,采用小型機(jī)雙機(jī)熱備來(lái)保證其不間斷穩(wěn)定運(yùn)行。
3.2.4 身份認(rèn)證機(jī)制
安全、可靠的身份認(rèn)證機(jī)制是保障系統(tǒng)安全的重要措施之一,在此系統(tǒng)中,采用基于USBKey的身份認(rèn)證方式。[7]
4 結(jié)語(yǔ)
總之,本文對(duì)氣象保障管理的業(yè)務(wù)需求進(jìn)行了分析,確定氣象保障管理系統(tǒng)的主要功能,分析確定了系統(tǒng)的完全、性能等非功能要求。基于氣象保障管理的業(yè)務(wù)需求,結(jié)合相關(guān)的非功能要求,基于JavaEE技術(shù)體系,對(duì)氣象保障管理系統(tǒng)進(jìn)行了總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)。確定了系統(tǒng)的三層體系結(jié)構(gòu)模型:表示層、業(yè)務(wù)層、數(shù)據(jù)層。同時(shí),對(duì)系統(tǒng)的數(shù)據(jù)庫(kù)結(jié)構(gòu)進(jìn)行了設(shè)計(jì),給出了主要數(shù)據(jù)實(shí)體的ER圖。最后,對(duì)系統(tǒng)的功能模塊進(jìn)行了合理劃分,確定了每個(gè)模塊的功能。
氣象保障管理系統(tǒng)進(jìn)行了實(shí)現(xiàn)。采用JSF+Spring+JPA的整合框架對(duì)系統(tǒng)的三層結(jié)構(gòu)進(jìn)行實(shí)現(xiàn),對(duì)系統(tǒng)的各個(gè)模塊進(jìn)行了編碼。
參考文獻(xiàn)
[1] 廖強(qiáng),劉韜,沈華.基于JSF技術(shù)的招生與就業(yè)網(wǎng)站建設(shè)研究[J].軟件導(dǎo)刊,2012,11(9):84-86.
[2] Oracle.The Life Cycle of a JavaServer Faces Page[M].The Java EE 5 Tutorial,2010.
[3] 計(jì)文柯.Spring技術(shù)內(nèi)幕一深入解析Spring架構(gòu)與設(shè)計(jì)原理[M].北京:機(jī)械工業(yè)出版社,2010.
[4] 聶常紅,唐遠(yuǎn)強(qiáng),馮相忠.基于JavaEE多層架構(gòu)的進(jìn)銷存管理系統(tǒng)[J].計(jì)算機(jī)與現(xiàn)代化,2012(10):168-171+176.
[5] 陳姍,江云濤.基于JSF+Spring+Hibernate的企業(yè)級(jí)系統(tǒng)設(shè)計(jì)[J].軟件導(dǎo)刊,2010,9(12):35-36.
[6] 田秋艷,王蕾,吳慶,等.基于JSF+Spring+Hibernate架構(gòu)的教學(xué)資源共享平臺(tái)[J].長(zhǎng)春工業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2009,30(3):337-340.
[7] 周楊川,孫淑霞,丁照宇.基于Spring+JPA框架的電子政務(wù)基礎(chǔ)平臺(tái)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(4):98-100.
Design and Implementation of? Meteorological Support Management System
Based on JavaEE
YANG Kun
(Linyi Meteorological Bureau,Linyi? Shandong? 276004)
Abstract:Meteorological information is an important duty of the government's public service. In the process of the implementation of the meteorological information security policies and implementation details, manual implementation is not only inefficient and error-prone due to the large number of the application families. Meanwhile, due to the lack of effective information management tools, information communication among departments is insufficient, which results in the non-scientific and non-normative process of qualification examination and approval. Therefore, implementation of the meteorological information management is an effective way to solve the current problem.
Key words:meteorological information;JavaEE;JSF;Spring;JPA