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

?

內(nèi)蒙古氣象局預(yù)報質(zhì)量考核系統(tǒng)設(shè)計與實現(xiàn)

2017-10-12 03:35:17◆賈
關(guān)鍵詞:區(qū)局氣象局圖表

◆賈 東

(赤峰市氣象局 內(nèi)蒙古 024000)

內(nèi)蒙古氣象局預(yù)報質(zhì)量考核系統(tǒng)設(shè)計與實現(xiàn)

◆賈 東

(赤峰市氣象局 內(nèi)蒙古 024000)

內(nèi)蒙古氣象局預(yù)報質(zhì)量考核系統(tǒng)于2011年正式上線,是擁有自主知識產(chǎn)權(quán)的預(yù)報業(yè)務(wù)系統(tǒng),主要應(yīng)用于全區(qū)氣象部門的城鎮(zhèn)天氣預(yù)報、災(zāi)害性天氣落區(qū)預(yù)報的質(zhì)量考核。經(jīng)過連續(xù)連續(xù)五年的建設(shè),目前已經(jīng)實現(xiàn)業(yè)務(wù)化穩(wěn)定運行,支撐了自治區(qū)氣象局預(yù)報質(zhì)量考核工作,同時發(fā)展成為各盟市氣象局質(zhì)量分析的最主要工具,促進了全區(qū)預(yù)報準(zhǔn)確率的穩(wěn)步提高。系統(tǒng)采用目前先進Nutz框架結(jié)構(gòu)和html5語言實現(xiàn),最大限度的提高Web開發(fā)能力,解決第三方類庫在Web項目開發(fā)中的低效問題,用最少的代碼做最多的事情。

預(yù)報質(zhì)量;Nutz框架;java web應(yīng)用;B/S結(jié)構(gòu);Bootstrap開發(fā)

0 引言

內(nèi)蒙古自治區(qū)預(yù)報質(zhì)量考核系統(tǒng)基于java web開發(fā)的B/S結(jié)構(gòu)應(yīng)用平臺,并且結(jié)合了目前先進的 Nutz框架結(jié)構(gòu)和Bootstrap等多種前后端開發(fā)語言實現(xiàn),在平臺的可維護性、可擴展性和系統(tǒng)的兼容性上有非常大的優(yōu)勢。該系統(tǒng)對全區(qū)天氣預(yù)報質(zhì)量檢驗和預(yù)報員個人預(yù)報質(zhì)量客觀化考核起到支撐作用,有效地促進了全區(qū)預(yù)報準(zhǔn)確率的提高,據(jù)中國氣象局國家氣象中心統(tǒng)計數(shù)據(jù)顯示,近四年來全區(qū)48小時內(nèi)氣溫預(yù)報準(zhǔn)確率提高幅度達到7%以上,其中24、48小時最高溫度預(yù)報準(zhǔn)確率分別提高10%、9.5%,最低溫度預(yù)報準(zhǔn)確率提高了6.6%、7%。相對國家指導(dǎo)預(yù)報技巧更是實現(xiàn)跨越式進展,在全國31個?。ㄖ陛犑?、自治區(qū))的24小時技巧排名中,高溫技巧由2010年第28名提高到2014年第3名,低溫技巧由第29名提高到第6名。

1 系統(tǒng)結(jié)構(gòu)設(shè)計

根據(jù)實際需求,系統(tǒng)分為后臺數(shù)據(jù)采集及運算、前臺數(shù)據(jù)查詢顯示兩大部分。后臺數(shù)據(jù)采集及運算是整個平臺的基礎(chǔ),采用Java語言實現(xiàn)模塊功能。主要負(fù)責(zé)天氣實況、盟市預(yù)報、國家指導(dǎo)預(yù)報、區(qū)局指導(dǎo)預(yù)報、災(zāi)害落區(qū)預(yù)報等基礎(chǔ)數(shù)據(jù)的采集工作,根據(jù)相應(yīng)算法計算出評分結(jié)果數(shù)據(jù)、日統(tǒng)計數(shù)據(jù)、月統(tǒng)計數(shù)據(jù)、災(zāi)害落區(qū)數(shù)據(jù)、個人質(zhì)量數(shù)據(jù)、風(fēng)檢驗數(shù)據(jù)等并入庫保存;前臺數(shù)據(jù)查詢與顯示頁面是面向全區(qū)預(yù)報員用戶的窗口,采用目前先進的html5語言、Bootstrap前端開發(fā)框架和Nutz框架技術(shù)實現(xiàn),負(fù)責(zé)盟市評分、全區(qū)評分、災(zāi)害評分、全區(qū)個人排名等模塊的查詢顯示和數(shù)據(jù)下載功能及值班登記、個人預(yù)報上傳等功能。

圖1 預(yù)報質(zhì)量考核系統(tǒng)功能結(jié)構(gòu)圖

2 總體設(shè)計思路

內(nèi)蒙古自治區(qū)預(yù)報質(zhì)量考核系統(tǒng)采用java語言及html5語言開發(fā)的一款基于B/S結(jié)構(gòu)的Java web應(yīng)用平臺,后臺數(shù)據(jù)采集模塊每日定時從區(qū)局?jǐn)?shù)據(jù)庫和各盟市上傳預(yù)報目錄中進行數(shù)據(jù)的采集與解析,主要包括天氣實況數(shù)據(jù)、盟市預(yù)報數(shù)據(jù)、區(qū)臺指導(dǎo)數(shù)據(jù)、災(zāi)害預(yù)報數(shù)據(jù)等基本數(shù)據(jù)。設(shè)定平臺的數(shù)據(jù)采集模塊每天定時運行,從區(qū)局?jǐn)?shù)據(jù)庫采集數(shù)據(jù),然后把數(shù)據(jù)入庫到平臺數(shù)據(jù)庫中,在此過程中要注意對異常數(shù)據(jù)的處理。數(shù)據(jù)采集完成后,開始使用不同的預(yù)報檢驗算法對全區(qū)臺站各項預(yù)報質(zhì)量進行計算,并把得到的結(jié)果存入數(shù)據(jù)庫中。前端 web頁面服務(wù)使用Tomcat作為應(yīng)用服務(wù)器,用戶通過瀏覽器訪問系統(tǒng)(目前訪問地址為:http://10.62.11.102)。并且對于一些基本的服務(wù)器信息,如區(qū)局基本資料的存放地址、報文的存儲路徑等信息都存放在系統(tǒng)的配置文件中,當(dāng)服務(wù)器信息有變動時,無需修改源代碼,只需修改配制文件即可,方便系統(tǒng)的擴展和移植。

2.1 基礎(chǔ)數(shù)據(jù)采集與計算

系統(tǒng)的運行依托于大量基礎(chǔ)數(shù)據(jù)的采集和計算,包括盟市預(yù)報、國家指導(dǎo)報、區(qū)局指導(dǎo)預(yù)報、災(zāi)害落區(qū)預(yù)報、天氣實況數(shù)據(jù)。目前基礎(chǔ)數(shù)據(jù)的采集分兩種方式,常規(guī)方式為從區(qū)局信息中心數(shù)據(jù)庫進行采集,采用數(shù)據(jù)庫直接連接方式;備份采集方式為區(qū)局目錄報文讀取,采用FTP連接方式。這樣做的好處在于當(dāng)一路數(shù)據(jù)采集遇到故障時可通過另一方式進行數(shù)據(jù)采集,大大地提高了數(shù)據(jù)的完整性。數(shù)據(jù)采集完成后,對這些基礎(chǔ)數(shù)據(jù)按照盟市、時次、時效、站號、日期等要素進行分類計算,并對其中的異常數(shù)據(jù)進行容錯性處理,保證計算結(jié)果的正確。如對數(shù)據(jù)中“9999”,“null”的處理和對報文中“////”的處理,另外在報文讀取中還要注意更正報的判斷,保證讀取到最新的預(yù)報數(shù)據(jù)。如在當(dāng)日運行時間內(nèi)由于報文或數(shù)據(jù)的缺失導(dǎo)致數(shù)據(jù)無法錄入,可實現(xiàn)對數(shù)據(jù)的補錄與更新操作。在程序中通過Nutz Dao技術(shù)進行數(shù)據(jù)庫的連接和讀取寫入操作,提高了數(shù)據(jù)庫的訪問速度,減少了數(shù)據(jù)庫的壓力。

2.2 數(shù)據(jù)完整性檢查

容易出現(xiàn)數(shù)據(jù)不完整的地方有兩種,一種是基礎(chǔ)數(shù)據(jù)的缺失。數(shù)據(jù)的錄入與計算過程中,由于基礎(chǔ)數(shù)據(jù)的不完整或者讀取中出現(xiàn)的數(shù)據(jù)連接異常錯誤,會導(dǎo)致某些要素的評分結(jié)果不準(zhǔn)確。這就要對數(shù)據(jù)的完整性進行檢查。在后臺采集模塊中,當(dāng)日數(shù)據(jù)采集完成后,會對預(yù)報數(shù)據(jù)和實況數(shù)據(jù)進行檢查,根據(jù)全區(qū)臺站數(shù)和所發(fā)預(yù)報數(shù)量進行對比,把缺失數(shù)據(jù)的站臺信息統(tǒng)一入庫,形成數(shù)據(jù)缺失表,可在前臺顯示頁面中的系統(tǒng)管理模塊中查看。另一種是計算后形成的中間數(shù)據(jù)的缺失。在數(shù)據(jù)采集與計算過程中,出現(xiàn)如網(wǎng)絡(luò)中斷、數(shù)據(jù)計算異常、服務(wù)器故障時,都會中斷采集模塊的正常運行,從而導(dǎo)致中間關(guān)鍵環(huán)節(jié)的數(shù)據(jù)缺失,在程序設(shè)計上采用日志的方式對采集模塊的運行進行記錄,從運行日志中可以很方便的看出程序運行情況,哪些環(huán)節(jié)的運算出現(xiàn)錯誤等信息,方面管理人員對所缺失的數(shù)據(jù)進行查詢補錄工作。

2.3 前端web服務(wù)器搭建

前端web應(yīng)用使用Tomcat搭建服務(wù),Tomcat 服務(wù)器是一個免費的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級應(yīng)用服務(wù)器,是開發(fā)和調(diào)試 JSP 程序的首選。首先需要安裝 JDK(java development kit) Java 語言的軟件開發(fā)工具包。然后進行 tomcat環(huán)境變量的配置。具體配置內(nèi)容如下:

JAVA_HOME= C:Program FilesJavajdk1.6.0

TOMCAT_HOME= d:myjava omcat 6.0

CLASSPATH=.; C:Program FilesJavajdk1.6.0lib;

服務(wù)搭建完成后,把項目發(fā)布到服務(wù)器端,即可通過瀏覽器訪問。

2.4 關(guān)鍵技術(shù)的應(yīng)用

項目使用了目前比較先進的nutz技術(shù),通過nutzDao可以很方便的實現(xiàn)對數(shù)據(jù)庫的連接,訪問等操作。在web應(yīng)用中需要在配制文件web.xml中進行相應(yīng)配制。nutzIoc將一部分關(guān)于對象的依賴關(guān)系單獨存儲在某種介質(zhì)里,并且提供一個接口幫助使用者獲得這些對象。在今后的項目開發(fā)中,如數(shù)據(jù)庫地址、用戶名和密碼發(fā)生改變時,不需要進行Java代碼的重新編譯,在此配置中修改即可。

NutzMvc是要和一個 Web 服務(wù)器(比如本系統(tǒng)使用的Tomcat)一起工作的,它存在的意義就是要把一個標(biāo)準(zhǔn)的 HTTP請求,轉(zhuǎn)發(fā)到某一個 Java 函數(shù)中??蛇M行參數(shù)的解析并提供幾個基本的渲染方式(比如 JSP, JSON)每一種 HTTP 請求,在函數(shù)上聲明一個注解,這個注解,在程序中使用以下代碼@IocBean(name="dataservice"),在需要引用該類中使用dataservice ds=IocInit.iocb.get(dataservice.class," dataservice ")得到類的聲明。

3 核心算法的實現(xiàn)

天氣預(yù)報質(zhì)量檢驗中需要大量的專業(yè)計算公式,參照《全國城鎮(zhèn)天氣預(yù)報質(zhì)量國家級檢驗方案》和《中短期天氣預(yù)報質(zhì)量檢驗辦法》進行了大量公式的總結(jié)、分析與演算,并最終在程序中實現(xiàn)。

3.1 降水分級檢驗算法與實現(xiàn)

將降水量分為小雨、中雨、大雨、暴雨、大暴雨、特大暴雨和小雪、中雪、大雪、暴雪10個等級(見表1),檢驗各級降水、一般性降水[小雨(雪)至大雨(雪)]和暴雨(雪)以上(暴雨至特大暴雨和暴雪)預(yù)報情況。累加降水量級檢驗:檢驗對≥0.1mm、≥10.0mm、≥25.0mm、≥50.0mm降水的預(yù)報情況。

3.2 溫度預(yù)報評分算法實現(xiàn)

其中,F(xiàn)i為第i站(次)預(yù)報溫度,Oi為第i站(次)實況溫度,K為1、2,分別代表NrK為預(yù)報正確的站(次)數(shù),NfK為預(yù)報的總站(次)數(shù)。

溫度預(yù)報準(zhǔn)確率的實際含義是溫度預(yù)報誤差≤1℃(2℃)的百分率。

4 主要功能模塊的技術(shù)實現(xiàn)

從整體模塊功能分布上來看,平臺包括面向用戶的頁面顯示功能,基于查詢結(jié)果的報表生成功能,圖表顯示功能,基礎(chǔ)數(shù)據(jù)錄入功能及其它一些系統(tǒng)維護與監(jiān)測功能。

4.1 報表生與下載模塊的實現(xiàn)

圖2 風(fēng)檢驗圖表顯示頁面

Java Excel俗稱jxl,是一開放源碼項目,通過它可以讀取Excel文件的內(nèi)容、創(chuàng)建新的Excel文件、更新已經(jīng)存在的Excel文件。使用該API非Windows操作系統(tǒng)也可以通過純Java應(yīng)用來處理Excel數(shù)據(jù)表。因為是使用Java編寫的,所以我們在Web應(yīng)用中可以通過JSP、Servlet來調(diào)用API實現(xiàn)對Excel數(shù)據(jù)表的訪問。通過java操作excel表格的工具類庫,支持Excel 95-2000的所有版本,生成Excel 2000標(biāo)準(zhǔn)格式,支持字體、數(shù)字、日期操作,能夠修飾單元格屬性,支持圖像和圖表。

4.2 圖表生成模塊實現(xiàn)

圖表功能使用 Echarts圖表庫實現(xiàn)。它基于 Canvas,純Javascript圖表庫,提供直觀、生動、可交互、可個性化定制的數(shù)據(jù)可視化圖表。創(chuàng)新的拖拽重計算、數(shù)據(jù)視圖、值域漫游等特性大大增強了用戶體驗,賦予了用戶對數(shù)據(jù)進行挖掘、整合的能力??缮烧劬€圖、柱狀圖、k線圖等圖表的實現(xiàn),可在生成的圖表上進行一些拖拽重計算特性,帶來了數(shù)據(jù)統(tǒng)計圖表從未有過的用戶體驗,允許用戶對統(tǒng)計數(shù)據(jù)進行有效的提取、整合,甚至在多個圖表間交換數(shù)據(jù)。具體實現(xiàn)步驟:

(1)需要在頁面通過為ECharts準(zhǔn)備一個具備大小(寬高)的Dom。

(2)引用所用的jar文件:

(3)進行相關(guān)配制寫入:

require.config({paths:{echarts:'js/dist'}});

var option = { legend: {data: ['主班', '全區(qū)平均', '指導(dǎo)','指導(dǎo)平均']},

color: ['#ff7f50', '#da70d6', '#87cefa', '#32cd32', '#6495ed','#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0'],

toolbox: {show: true, feature: {mark: {show: true},

dataView: { readOnly: false},

magicType : {show: true, type: ['line', 'bar']},

restore: {show: true},

saveAsImage:{show: true} }},

calculable: false,

animation:false,

animationDuration: 10,

xAxis: [{type: 'category', boundaryGap: true, }],

series: [{name: '主班', type: 'bar', barGap:2, itemStyle: {

normal: {lineStyle: {shadowColor: 'rgba(0,0,0,0.4)'},

label : {show : true}}}},

name: '全區(qū)平均', type: 'line', itemStyle: {normal: {lineStyle: {

shadowColor: 'rgba(0,0,0,0.4)'}}}}

圖3 高溫2度24小時圖表顯示

5 結(jié)論

當(dāng)前正值現(xiàn)代天氣業(yè)務(wù)、服務(wù)型業(yè)務(wù)建設(shè)迅速推進時期,內(nèi)蒙古天氣預(yù)報質(zhì)量考核系統(tǒng)的全面網(wǎng)絡(luò)化形式、全面的功能設(shè)計、統(tǒng)一的數(shù)據(jù)管理、公開透明的檢驗形式正好滿足了時代發(fā)展和業(yè)務(wù)改進的需要。Java語言、nutz框架、bootstrap等先進的語言與設(shè)計工具的應(yīng)用,使平臺在整體布局上層次分明,結(jié)構(gòu)清晰。功能的模塊化實現(xiàn),使平臺在可擴展性與可維護性上面有很強的優(yōu)勢。通過三年多的全區(qū)業(yè)務(wù)應(yīng)用,也充分證明了該系統(tǒng)功能實用、技術(shù)先進、運行穩(wěn)定、為我區(qū)預(yù)報質(zhì)量的檢驗提供了一個非常必要的平臺。

[1]梁勇.Java語言程序設(shè)計[M].機械工業(yè)出版,2011.

[2]李緒成.java語言程序設(shè)計(java7) [M].清華大學(xué)出版社,2014.

[3]Y Daniel Liang.Java語言程序設(shè)計基礎(chǔ)篇[M].機械工業(yè)出版社,2008.

[4]孫衛(wèi)琴.Java面向?qū)ο缶幊蘙M].電子工業(yè)出版社,2006.

[5]李剛.瘋狂Java講義[M].電子工業(yè)出版社,2012.

[6]梁勇. Java深入解析——透析Java本質(zhì)的36個話題[M].電子工業(yè)出版社,2013.

[7]孫衛(wèi)琴.Tomcat與Java Web開發(fā)技術(shù)詳解(第2版) [M].電子工業(yè)出版社,2009.

猜你喜歡
區(qū)局氣象局圖表
黑龍江省氣象局組織參觀黑龍江省廉政教育基地
黑龍江氣象(2021年2期)2021-11-05 07:07:08
遼寧省環(huán)境保護廳與遼寧省氣象局進一步深化合作
敢問天公脾氣幾何?——寶山氣象局參觀記
小主人報(2016年9期)2016-12-01 06:23:20
雙周圖表
足球周刊(2016年14期)2016-11-02 10:54:56
雙周圖表
足球周刊(2016年15期)2016-11-02 10:54:16
雙周圖表
足球周刊(2016年10期)2016-10-08 18:30:55
圖表
世界博覽(2016年16期)2016-09-27 18:25:26
武漢市武昌區(qū)國家稅務(wù)局征納活動掠影
稅收征納(2015年9期)2015-12-23 03:23:28
武漢市洪山區(qū)地方稅務(wù)局征納活動掠影
稅收征納(2015年6期)2015-12-23 00:23:02
武漢市洪山區(qū)國家稅務(wù)局征納活動掠影
稅收征納(2014年2期)2014-05-10 01:04:40
新民市| 龙海市| 井冈山市| 大城县| 固始县| 四子王旗| 厦门市| 滦南县| 六盘水市| 仪征市| 黄山市| 白水县| 宝清县| 明光市| 沅陵县| 长顺县| 合阳县| 静宁县| 申扎县| 明光市| 宁波市| 宿迁市| 比如县| 西华县| 永定县| 乌鲁木齐市| 修水县| 辽阳市| 吉木萨尔县| 大姚县| 昆明市| 黑龙江省| 上蔡县| 洛南县| 岑溪市| 乌审旗| 唐海县| 怀柔区| 绥化市| 大宁县| 二连浩特市|