摘 要:由于B/S模式的簡單易用,已經(jīng)出現(xiàn)了B/S模式下的網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件工具。但大部分是通過在瀏覽器中安裝插件(如ActiveX、Applet、SVG)來實(shí)現(xiàn)數(shù)據(jù)流量功能。如B/S機(jī)房數(shù)據(jù)流量系統(tǒng)、基于Web的遠(yuǎn)程實(shí)時(shí)數(shù)據(jù)流量系統(tǒng)、基于B/S模式的組件化網(wǎng)絡(luò)多媒體數(shù)據(jù)流量系統(tǒng)、基于SVG的實(shí)時(shí)數(shù)據(jù)流量系統(tǒng)。在瀏覽器中安裝插件是一件比較麻煩的事,并且一旦發(fā)生插件失效的情況,就可以導(dǎo)致數(shù)據(jù)流量系統(tǒng)的癱瘓,若使用Applet,則會使得圖像的顯示的速度會變慢。
關(guān)鍵詞:圖形化;網(wǎng)絡(luò);數(shù)據(jù)流量
中圖分類號:TP393
當(dāng)使用數(shù)據(jù)流量構(gòu)件進(jìn)行生產(chǎn)過程數(shù)據(jù)流量時(shí),實(shí)時(shí)數(shù)據(jù)流量是非常必要的。目前,在C/S模式下的實(shí)時(shí)數(shù)據(jù)流量工具已經(jīng)非常成熟,而B/S模式下存在一部分通過安裝插件來實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)流量的工具,而不安裝插件的大部分?jǐn)?shù)據(jù)流量工具是通過定時(shí)刷新Web頁面來實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)流量的。在B/S模式下,不需要安裝插件,也不刷新頁面,實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)流量和動(dòng)態(tài)數(shù)據(jù)流量的圖形化網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件很少。
1 圖形化網(wǎng)絡(luò)數(shù)據(jù)流量控制模式設(shè)計(jì)
網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件包括4個(gè)模塊:圖表視圖模塊、圖表數(shù)據(jù)處理模塊、日志管理模塊和異常處理模塊。圖表視圖模塊包括圖形參數(shù)設(shè)置、JS4OOP接口、基于VML圖形模板、圖形編輯接口以及XMLHttpReques組件。通過調(diào)用JS4OOP接口,來進(jìn)行圖形參數(shù)設(shè)置提供圖形參數(shù)接口,基于VML圖形模板提供以矢量標(biāo)簽語言為繪制語言的不同圖形的模板。圖形編輯接口,提供給不同圖形可編輯視圖,XMLHttpRequest提供異步傳輸數(shù)據(jù)接口。圖表數(shù)據(jù)處理模塊包括圖形模板XML文件處理,圖表實(shí)際對應(yīng)數(shù)據(jù)處理,設(shè)置/獲取Web服務(wù)器Session中時(shí)間戳。日志管理模塊和異常處理模塊,分別記錄日志信息,以及異常處理操作。
2 圖形化網(wǎng)絡(luò)數(shù)據(jù)流量控制數(shù)據(jù)庫模式設(shè)計(jì)
在Oracle數(shù)據(jù)庫中,首先編寫一個(gè)Java或C程序加載到數(shù)據(jù)庫中,然后創(chuàng)建包含類的存儲過程,調(diào)用Oracle系統(tǒng)參數(shù)輸出,編譯存儲過程,最后在被數(shù)據(jù)流量的表上創(chuàng)建觸發(fā)器,在觸發(fā)器中調(diào)用處理的存儲過程。當(dāng)被數(shù)據(jù)流量表發(fā)生變化時(shí),觸發(fā)器自動(dòng)調(diào)用存儲過程來執(zhí)行處理類的操作,用來修改對應(yīng)表的服務(wù)器端時(shí)間戳。函數(shù)按照詞法來劃分作用域,而不是動(dòng)態(tài)劃分。函數(shù)運(yùn)行在定義它們的作用域中,而不是運(yùn)行在執(zhí)行它們的作用域中,例如:假定函數(shù)g是在函數(shù)f中定義,g總是在f的作用域中執(zhí)行,它的作用域包括三個(gè)對象:它自己的調(diào)用對象、f()的調(diào)用對象和全局對象。即使從f的外部來調(diào)用g(),它的作用域始終是這樣,即是說,f()的調(diào)用對象會一直包圍著g(),即使f(),還沒有被執(zhí)行。
下面再給出一個(gè)返回值為函數(shù)的函數(shù)。每當(dāng)調(diào)用這個(gè)函數(shù)時(shí),它就會創(chuàng)建并返回一個(gè)函數(shù),雖然被創(chuàng)建的函數(shù)總是相同,但是創(chuàng)建它們的作用域再每次調(diào)用時(shí)都有細(xì)微的不同(每次調(diào)用時(shí)有關(guān)外部函數(shù)的參數(shù)值都有所不同)。如果將返回的函數(shù)保存在一個(gè)數(shù)組中,然后逐個(gè)調(diào)用這些函數(shù),就會發(fā)現(xiàn)他們返回的值不同,由于這些函數(shù)都是由相同的JavaScript代碼構(gòu)成,而且是在完全相同的作用域中調(diào)用的,所以產(chǎn)生不同的返回值的唯一原因就是定義這些函數(shù)的作用域。
簡單公共業(yè)務(wù)對象模塊為調(diào)用業(yè)務(wù)邏輯處理層的接口,Core Prototype部分為JS4OOP的核心模塊,它包括JavaScript面向?qū)ο缶幊谭庋b的實(shí)現(xiàn),Ajax模塊是JS4OOP封裝了Ajax的操作。Application Framework為應(yīng)用框架接口,通過調(diào)用它,可以實(shí)現(xiàn)Web應(yīng)用,事件的注冊,以及可以捕獲頁面異常,它是JS4OOP的應(yīng)用核心框架。Toolkits為JS4OOP的工具類,這里可以是開源的類包,也可以自己編寫自己的工具包,在本文設(shè)計(jì)中,圖形包的工具類將放置在JS4OOP這個(gè)部分。后續(xù)小節(jié)將根據(jù)JavaScript語言的基本特性,給出Core Prototype、Ajax和Application Framework的設(shè)計(jì)與實(shí)現(xiàn)。
3 結(jié)束語
針對網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件實(shí)際應(yīng)用需求,將SVG、VML技術(shù)引入網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件中,并綜合考慮了JavaScript腳本語言的基于對象編程的語言特性,完成了JavaScript腳本語言實(shí)現(xiàn)面向?qū)ο缶幊痰目蚣躂S4OOP,并以JS4OOP框架為基礎(chǔ),完成了基于B/S模式的網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件展現(xiàn)層的設(shè)計(jì)與實(shí)現(xiàn)。網(wǎng)絡(luò)數(shù)據(jù)流量構(gòu)件展現(xiàn)層包括基本圖形包、電信網(wǎng)管圖形包、電信工作流程圖圖形包和工作流程圖編輯器?;緢D形包包括餅圖、柱狀圖、折線圖以及其變形形式。電信網(wǎng)管圖形包包括本地網(wǎng)地理圖、故障管理圖、中繼圖等各式各樣的網(wǎng)絡(luò)拓?fù)鋱D。電信工作流程圖圖形包包括了小靈通寬帶障礙處理系統(tǒng)中障礙單處理工作流程圖,全業(yè)務(wù)自動(dòng)開通系統(tǒng)中業(yè)務(wù)申請流程圖等各種電信內(nèi)部的工作流程圖形包。工作流程圖編輯器包括了對于工作流程的定制。
參考文獻(xiàn):
[1]周文生.基于SVG的Web GIS研究[J].中國圖像圖形學(xué)報(bào),2012(07):693-698.
[2]侯宇等.基于XML的SVG技術(shù)及其應(yīng)用[J].計(jì)算機(jī)應(yīng)用,2013(05).
作者單位:常州鐵道高等職業(yè)技術(shù)學(xué)校,江蘇常州 213011