Ajax在基于BS模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用_第1頁(yè)
Ajax在基于BS模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用_第2頁(yè)
Ajax在基于BS模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用_第3頁(yè)
Ajax在基于BS模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用_第4頁(yè)
Ajax在基于BS模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Ajax在基于B/S模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用摘 要: 針對(duì)基于B/S模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)響應(yīng)速度慢、用戶等待時(shí)間長(zhǎng)等問題,本文闡述了Ajax技術(shù)并將其引入到煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中,Ajax技術(shù)將瀏覽器端和服務(wù)器端傳統(tǒng)的同步交互通信方式改變?yōu)楫惒浇换ネㄐ欧绞?從而減輕了服務(wù)器負(fù)擔(dān)、提高了系統(tǒng)的響應(yīng)速度、增強(qiáng)了煤礦安全生產(chǎn)實(shí)時(shí)監(jiān)控的能力。關(guān)鍵詞: B/S模式;煤礦安全;Ajax;異步交互目前煤礦安全生產(chǎn)監(jiān)控系統(tǒng)普遍采用的網(wǎng)絡(luò)結(jié)構(gòu)是FCS和DCS,F(xiàn)CS與DCS結(jié)構(gòu)的監(jiān)控系統(tǒng)具有相對(duì)的獨(dú)立性和封閉性,監(jiān)控系統(tǒng)之間容易形成了“信息孤島”,不利于監(jiān)測(cè)信息的共享,隨著煤礦信息化建設(shè)的發(fā)展,

2、很多煤礦都建立了自己的局域網(wǎng)并且連接到Internet,因此開發(fā)基于Internet的B/S結(jié)構(gòu)的遠(yuǎn)程實(shí)時(shí)監(jiān)控系統(tǒng)具有非常重要的意義?;贐/S模式的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)可以使用戶通過Internet隨時(shí)監(jiān)測(cè)煤礦安全生產(chǎn)信息,但煤礦安全生產(chǎn)監(jiān)測(cè)數(shù)據(jù)量較大,而且需要實(shí)時(shí)更新的數(shù)據(jù)量大,進(jìn)而導(dǎo)致了客戶端瀏覽器刷新頻率較高、網(wǎng)絡(luò)傳輸速度的下降,從而使得煤礦安全生產(chǎn)監(jiān)測(cè)的效率下降。將Ajax引入監(jiān)測(cè)系統(tǒng),可以實(shí)現(xiàn)頁(yè)面的粒狀更新,避免頁(yè)面刷新時(shí)出現(xiàn)“白屏”現(xiàn)象,提高了其響應(yīng)速度,增強(qiáng)了其交互能力,提高了煤礦安全生產(chǎn)實(shí)時(shí)監(jiān)控的能力。1 AjaxAjax是一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開發(fā)技術(shù),全稱為“Asy

3、nchronous JavaScript and XML”,其核心是JavaScript對(duì)象XML-HttpRequest,它是一種支持異步請(qǐng)求的技術(shù),XMLHttpRequest可以使用JavaScript向服務(wù)器提出請(qǐng)求并處理響應(yīng)。Ajax體系結(jié)構(gòu)比傳統(tǒng)的Web體系結(jié)多了一個(gè)Ajax引擎,安裝在瀏覽器客戶端中,在接受到用戶界面?zhèn)鱽淼腏avaScript調(diào)用后,發(fā)送請(qǐng)求到服務(wù)器,Ajax來完成用戶界面上的粒狀更新,縮短了用戶界面和服務(wù)器的交互過程的時(shí)間,提高了效率。Ajax引擎可以實(shí)現(xiàn)瀏覽器和服務(wù)器信息交互的異步化。一方面,通過JavaScript腳本編程語(yǔ)言靈活地處理各種用戶請(qǐng)求,并利用D

4、OM和CSS完成用戶界面的動(dòng)態(tài)和格式化顯示;另一方面,在無需刷新和重載瀏覽器頁(yè)面的前提下,通過JavaScrip,利用XMLHttpRequest對(duì)象與服務(wù)器進(jìn)行線路化的數(shù)據(jù)交換,如圖1所示。Ajax結(jié)構(gòu)體系有以下優(yōu)點(diǎn):1) 中間層引擎承擔(dān)了一部分服務(wù)器處理數(shù)據(jù)的工作,可以減輕用戶請(qǐng)求造成的網(wǎng)絡(luò)服務(wù)器的負(fù)擔(dān);2) 客戶端與服務(wù)器端異步交互的特點(diǎn)使得頁(yè)面更新無需重載,大大縮短了用戶等待時(shí)間,提高了數(shù)據(jù)更新的效率;3) JavaScript、XMLHttpRequest等已經(jīng)被瀏覽器廣泛支持,其通用性大大提高。2 Ajax在煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中的應(yīng)用及實(shí)現(xiàn)2.1 開發(fā)平臺(tái)系統(tǒng)開發(fā)過程中,操作系統(tǒng)

5、采用Windows Server 2003,開發(fā)工具采用VisualStudio.NET 2008,數(shù)據(jù)庫(kù)則采用SQL Server 2005。2.2具體實(shí)現(xiàn)在具體的程序?qū)崿F(xiàn)過程中綜合運(yùn)用了Ajax技術(shù)以及ASP.NET技術(shù)來實(shí)現(xiàn)煤礦安全生產(chǎn)監(jiān)控?cái)?shù)據(jù)的動(dòng)態(tài)刷新。一個(gè)完整的Ajax執(zhí)行步驟如圖2所示。本系統(tǒng)采用XmlHttpRequest對(duì)象的responseXML屬性來返回煤礦安全生產(chǎn)數(shù)據(jù)信息,下文給出了煤礦安全生產(chǎn)數(shù)據(jù)信息粒狀更新的實(shí)現(xiàn)過程:1) 初始化XMLHttpRequest對(duì)象。在本系統(tǒng)中,采用環(huán)境下的C#語(yǔ)言創(chuàng)建XMLHttpRequest代碼如下:2) 指定響應(yīng)處理函數(shù)。將相應(yīng)的

6、處理函數(shù)名稱賦給XMLHttpReques對(duì)象onReadyStateChange屬性。實(shí)現(xiàn)關(guān)鍵代碼:xmlhttp.onReadyStateChange=processRequest;3) 發(fā)送HTTP請(qǐng)求,指定了響應(yīng)處理函數(shù)后,便可以向服務(wù)器發(fā)出HTTP請(qǐng)求了。這一步調(diào)用XMLHttpRequest對(duì)象的open()和send()方法:xmlhttp.open("post","url?參數(shù)1="+值1+"參數(shù)2="+值2.+"參數(shù)n="+值n.;xmlhttp.send(null);4) 處理服務(wù)器返回的信息。

7、首先,要檢查XMLHttpRequest對(duì)象的readyState值,判斷請(qǐng)求目前的狀態(tài)。readyState值為4的時(shí)候,代表服務(wù)器已經(jīng)傳回所有的信息,可以處理并更新頁(yè)面內(nèi)容了。if(xmlhttp.readyState=4)/信息已經(jīng)返回,可以開始處理else/信息還沒有返回,等待if(xmlhttp.status=200)/頁(yè)面正常,可以開始處理else/頁(yè)面有問題5) 實(shí)現(xiàn)數(shù)據(jù)查詢頁(yè)面的粒狀更新本系統(tǒng)采用XmlHttpRequest對(duì)象的responseXML屬性來返回煤礦安全生產(chǎn)數(shù)據(jù),因此,在客戶端接收到的參數(shù)是XML文檔對(duì)象,調(diào)用fillTable(xmlobj)方法,該方法首先獲

8、得服務(wù)器端返回的XML文檔對(duì)象的節(jié)點(diǎn),之后創(chuàng)建表格對(duì)象,然后用for語(yǔ)句動(dòng)態(tài)產(chǎn)生單元格,緊接著再來逐次填充表格中的每一個(gè)<td>節(jié)點(diǎn),從而實(shí)現(xiàn)了監(jiān)控?cái)?shù)據(jù)頁(yè)面的粒狀更新,實(shí)現(xiàn)的關(guān)鍵函數(shù)fillTable(xmlobj)如下:/獲取xml對(duì)象var xmlobj=xmlhttp.responseXML;var66data=xmlobj.getElementsByTag-Name("data");var datalen=data.ChildNodes();/創(chuàng)建表格對(duì)象vartable=document.createElement("table")

9、;/動(dòng)態(tài)產(chǎn)生并填充單元格for(var i=0;i<data.length;i+)var-tr=-table.insertRow(i);for(var j=0;j<datalen;j+)var-td=-tr.insertCell(j);-tn=datai.ChildNode(j).NodeValue;-td.appendChild(-tn);煤礦安全生產(chǎn)監(jiān)控系統(tǒng)歷史數(shù)據(jù)查詢網(wǎng)頁(yè)粒狀更新界面如圖3所示。3 結(jié)束語(yǔ)在基于B/S模式下的煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中,由于在一個(gè)頁(yè)面上需要監(jiān)控的數(shù)據(jù)較多,安全生產(chǎn)數(shù)據(jù)更新頻率高,如果使用傳統(tǒng)的全屏刷新方式更新數(shù)據(jù),不僅不利于用戶的監(jiān)控,還給服務(wù)器造

10、成了較大的壓力,系統(tǒng)效率低下而且也不穩(wěn)定。將Ajax技術(shù)引入到煤礦安全生產(chǎn)監(jiān)控系統(tǒng)中,可以很方便地解決這些問題,既調(diào)高了用戶的監(jiān)控的效率,也使得系統(tǒng)的穩(wěn)定性得到提高,該技術(shù)已經(jīng)在兗礦集團(tuán)興隆莊煤礦投入使用,效果良好。參考文獻(xiàn):1 耿濤,宋宜梅,向家偉,韋星,植海深.基于OSA-CBM煤礦機(jī)械故障診斷系統(tǒng)的設(shè)計(jì)與研究J.煤礦機(jī)械,2008(5):12-15.2 賈宗璞,葳鵬,賈祥芝.多媒體礦井監(jiān)控系統(tǒng)的WEB發(fā)布J.工礦自動(dòng)化,2004(6):23-25.3 Ryan Asleson,Nathaniel T.Schutta,金靈譯.Ajax基礎(chǔ)教程M.北京:人民郵電出版社,2006.4 陽(yáng)鋒,徐建波.AJ

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論