崔維軍 向 波
摘要 從高校實(shí)驗(yàn)室的現(xiàn)狀和實(shí)際需求出發(fā),開發(fā)基于B/S與C/S混合模式的實(shí)驗(yàn)室管理系統(tǒng),實(shí)現(xiàn)上機(jī)預(yù)約、智能排課、實(shí)驗(yàn)監(jiān)管、遠(yuǎn)程控制等主要功能,有效地解決實(shí)驗(yàn)無(wú)法及時(shí)預(yù)約及人工處理預(yù)約時(shí)出現(xiàn)沖突和學(xué)生實(shí)驗(yàn)時(shí)無(wú)法控制的狀況,在很大程度上提高實(shí)驗(yàn)室的管理水平和設(shè)備利用率,使實(shí)驗(yàn)室管理變得更加科學(xué)、快速、規(guī)范、高效。
關(guān)鍵詞 實(shí)驗(yàn)室管理;AJAX;混合模式;遠(yuǎn)程控制
中圖分類號(hào):TP393.09 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-489X(2009)24-0087-03
Design and Implementation of Integrated Management Laboratory System based on B/S and C/S Mixed-mode//Cui Weijun, Xiang Bo
Abstract From the situation of university laboratory and the actual demand, designed and laboratory management system based on B/S and C/S mixed-mode, realized some key function such as experimental booking, smart course arrangement, laboratory monitoring and remote control, effectively address the problem that experiment can not be dealt with in time of booking and Students was unable to control in the class, improved the management of the laboratory level and capacity utilization to a large extent, made the laboratory more scientific, rapid, and highly efficient.
Key words laboratory management;AJAX; mixed-mode; remote control
Authors address School of Economics & Management, Nanjing University of Information Science & Technology, Nanjing, 210044, China
長(zhǎng)期以來(lái),眾多高校計(jì)算機(jī)實(shí)驗(yàn)室的各種管理工作一直由人工整理和統(tǒng)計(jì),存在工作煩瑣、信息無(wú)法及時(shí)共享、統(tǒng)計(jì)不方便等問(wèn)題。隨著高校實(shí)驗(yàn)室數(shù)量的增加及規(guī)模不斷擴(kuò)大,以前的以人工為主的管理模式已遠(yuǎn)不能達(dá)到對(duì)實(shí)驗(yàn)室進(jìn)行高效、科學(xué)管理的目的。同時(shí),由于在這樣一個(gè)開放性的教學(xué)環(huán)境中,學(xué)生上機(jī)玩游戲等不可控因素也是一個(gè)令實(shí)驗(yàn)室管理員和任課教師頭痛的問(wèn)題。因此,打破傳統(tǒng)的實(shí)驗(yàn)室管理方式勢(shì)在必行。本文將就這些問(wèn)題及高校實(shí)驗(yàn)室分散、網(wǎng)絡(luò)設(shè)施條件有限等實(shí)際情況,設(shè)計(jì)并實(shí)現(xiàn)一套基于B/S與C/S混合模式的實(shí)驗(yàn)室綜合管理系統(tǒng),從而減輕實(shí)驗(yàn)室工作人員負(fù)擔(dān),提高實(shí)驗(yàn)室利用率。
1 系統(tǒng)概述
本系統(tǒng)基于B/S與C/S兩種模式,B/S部分主要采用AJAX結(jié)合J2EE的方式來(lái)實(shí)現(xiàn),C/S部分全部采用Java實(shí)現(xiàn)。系統(tǒng)中引進(jìn)目前較流行的AJAX技術(shù),用來(lái)實(shí)現(xiàn)B/S模塊中的遠(yuǎn)程機(jī)器監(jiān)管功能及搜索建議等功能,實(shí)現(xiàn)數(shù)據(jù)在用戶界面動(dòng)態(tài)無(wú)刷新顯示,充分改善用戶使用體驗(yàn),使Web應(yīng)用程序桌面化。同時(shí)系統(tǒng)中對(duì)實(shí)驗(yàn)項(xiàng)目名稱等的更新采用雙擊動(dòng)態(tài)更新的方式實(shí)現(xiàn),其效果類似于C/S類系統(tǒng)中相應(yīng)功能的效果。
本系統(tǒng)采用Java語(yǔ)言開發(fā),不受操作系統(tǒng)平臺(tái)的限制,系統(tǒng)的運(yùn)行基于JVM(Java虛擬機(jī)),只需在操作平臺(tái)下安裝相應(yīng)的JVM即可運(yùn)行該Java程序。系統(tǒng)的C/S與B/S部分通過(guò)數(shù)據(jù)庫(kù)聯(lián)系起來(lái),實(shí)驗(yàn)室管理員在B/S客戶端對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作,然后再由客戶機(jī)通過(guò)本機(jī)MAC地址讀取對(duì)應(yīng)本機(jī)的操作信息,并在客戶機(jī)上執(zhí)行,最終實(shí)現(xiàn)B/S與C/S兩部分系統(tǒng)的有機(jī)結(jié)合,來(lái)完成系統(tǒng)所要實(shí)現(xiàn)的功能。
2 系統(tǒng)主要功能設(shè)計(jì)
2.1 系統(tǒng)功能結(jié)構(gòu)圖通過(guò)對(duì)高校實(shí)驗(yàn)室現(xiàn)狀與現(xiàn)實(shí)需求進(jìn)行分析,得出系統(tǒng)的B/S部分及C/S部分功能結(jié)構(gòu)圖,分別如圖1和圖2所示。

2.2 實(shí)驗(yàn)預(yù)約模塊設(shè)計(jì)實(shí)驗(yàn)預(yù)約時(shí)需要根據(jù)實(shí)驗(yàn)室開放情況,通過(guò)最大容納學(xué)生人數(shù)來(lái)進(jìn)行限制。用戶在預(yù)約時(shí),系統(tǒng)使用AJAX技術(shù)響應(yīng)用戶相應(yīng)的請(qǐng)求來(lái)動(dòng)態(tài)無(wú)刷新更新一部分預(yù)約信息。為了防止出現(xiàn)實(shí)驗(yàn)預(yù)約沖突,系統(tǒng)對(duì)已預(yù)約的時(shí)間段進(jìn)行禁用,用戶在預(yù)約時(shí),這些時(shí)間段將顯示為禁用狀態(tài),并給出相應(yīng)的提示。為了管理的方便,每個(gè)用戶可在登錄后查看自己對(duì)應(yīng)的預(yù)約申請(qǐng),同時(shí)可刪除自己沒(méi)有被管理員審批或?qū)徟煌ㄟ^(guò)的預(yù)約申請(qǐng)。所有已被管理員審批通過(guò)的預(yù)約申請(qǐng)將以課表和列表的形式顯示給用戶,用戶可按實(shí)驗(yàn)室名稱來(lái)查詢對(duì)應(yīng)實(shí)驗(yàn)室的實(shí)驗(yàn)安排情況。

2.3 用戶管理模塊設(shè)計(jì)從實(shí)際需求出發(fā),系統(tǒng)共為系統(tǒng)注冊(cè)用戶劃分3種不同角色:學(xué)生用戶、教師用戶、管理員。所有用戶在默認(rèn)注冊(cè)時(shí)都會(huì)由系統(tǒng)分配由管理員設(shè)置的默認(rèn)欄目訪問(wèn)權(quán)限,這些權(quán)限也可由管理員之后進(jìn)行更改,這樣在一定程度上提高系統(tǒng)的靈活性。系統(tǒng)對(duì)于用戶的注冊(cè)采用從后臺(tái)統(tǒng)一導(dǎo)入的方式,不提供用戶前臺(tái)自助注冊(cè)。這樣做的目的是確保用戶信息的真實(shí)有效,因?yàn)閷W(xué)生和教師用戶信息數(shù)據(jù)可以由各學(xué)院提供。同時(shí)因?yàn)閷W(xué)院內(nèi)部一般都將學(xué)生信息保存在Excel文件中,而本系統(tǒng)的用戶數(shù)據(jù)導(dǎo)入又是從Excel中讀取,且導(dǎo)入時(shí)只需要提供賬號(hào)和姓名2項(xiàng)即可,其他信息將由管理員進(jìn)行統(tǒng)一選擇,這樣可以很方便地實(shí)現(xiàn)同一學(xué)院/專業(yè)的學(xué)生用戶或教師用戶進(jìn)行批量導(dǎo)入。
2.4 課堂交流模塊設(shè)計(jì)該功能模塊用來(lái)解決實(shí)驗(yàn)上機(jī)時(shí)不能及時(shí)交流的問(wèn)題。該功能模塊是采用AJAX動(dòng)態(tài)無(wú)刷新顯示用戶所交流的問(wèn)題。學(xué)生和實(shí)驗(yàn)指導(dǎo)教師在上機(jī)實(shí)驗(yàn)時(shí)可通過(guò)此模塊來(lái)交流實(shí)驗(yàn)時(shí)遇到的問(wèn)題,而實(shí)驗(yàn)指導(dǎo)教師可以通過(guò)該窗口為學(xué)生解決經(jīng)常碰到的問(wèn)題,避免多個(gè)學(xué)生提出類似問(wèn)題的情況,在一定程度上節(jié)約學(xué)生和教師的寶貴時(shí)間。
2.5 電子點(diǎn)名模塊設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)教師在上機(jī)實(shí)驗(yàn)時(shí)可使用此功能來(lái)對(duì)學(xué)生進(jìn)行實(shí)時(shí)點(diǎn)名。實(shí)驗(yàn)前實(shí)驗(yàn)指導(dǎo)教師只需向該實(shí)驗(yàn)班發(fā)出點(diǎn)名命令,教師每次實(shí)驗(yàn)發(fā)送的電子點(diǎn)名請(qǐng)求,系統(tǒng)都將生成對(duì)應(yīng)的電子點(diǎn)名冊(cè),內(nèi)容包含對(duì)應(yīng)本實(shí)驗(yàn)班的學(xué)生名單。學(xué)生在上機(jī)實(shí)驗(yàn)時(shí)只需用本人賬號(hào)登錄并應(yīng)答教師的點(diǎn)名即可實(shí)現(xiàn)電子點(diǎn)名。為了防別人代答的問(wèn)題,系統(tǒng)規(guī)定在一次實(shí)驗(yàn)課時(shí)間段內(nèi),同一機(jī)器不允許使用2個(gè)賬號(hào)同時(shí)或交替登錄。
2.6 實(shí)驗(yàn)監(jiān)管模塊設(shè)計(jì)實(shí)驗(yàn)監(jiān)管的實(shí)現(xiàn)是將B/S與C/S兩部分結(jié)合來(lái)實(shí)現(xiàn),發(fā)揮各自不同的優(yōu)勢(shì)。實(shí)驗(yàn)指導(dǎo)教師可通過(guò)Web界面的實(shí)驗(yàn)監(jiān)管來(lái)對(duì)在線實(shí)驗(yàn)的機(jī)器進(jìn)行遠(yuǎn)程控制,可實(shí)現(xiàn)遠(yuǎn)程關(guān)機(jī)、重啟、注銷操作。用戶在Web客戶端向?qū)?yīng)學(xué)生發(fā)送相關(guān)命令后,學(xué)生機(jī)客戶端程序會(huì)根據(jù)發(fā)送的命令在本機(jī)上執(zhí)行相應(yīng)的操作。同時(shí)Web端由管理員設(shè)置的禁用程序列表也將由客戶端讀取并在本機(jī)上終止相應(yīng)的進(jìn)程。該功能的流程圖如圖3所示。
2.7 系統(tǒng)配置模塊設(shè)計(jì)系統(tǒng)的配置主要用來(lái)設(shè)置系統(tǒng)的一些參數(shù),包括當(dāng)前開課學(xué)期、開學(xué)時(shí)間、本學(xué)期總周數(shù)、預(yù)約系統(tǒng)開啟狀態(tài)等。這些系統(tǒng)運(yùn)行的基本參數(shù)必須由管理員在系統(tǒng)正式運(yùn)行前進(jìn)行正確配置,否則系統(tǒng)無(wú)法正常運(yùn)行。本系統(tǒng)將系統(tǒng)的部分參數(shù)設(shè)置為可由管理員從后臺(tái)進(jìn)行設(shè)置是為了提高系統(tǒng)的靈活性、適用性,滿足不同高校用戶的不同需求。系統(tǒng)中的當(dāng)前學(xué)期和總周數(shù)必須在每學(xué)期預(yù)約開始前由管理員設(shè)置好,否則系統(tǒng)預(yù)約信息將不能進(jìn)行正確歸類,實(shí)驗(yàn)課表也將無(wú)法正確顯示。

2.8 遠(yuǎn)程桌面功能遠(yuǎn)程桌面功能是用來(lái)配合實(shí)驗(yàn)監(jiān)管的,管理員可通過(guò)遠(yuǎn)程桌面連接到遠(yuǎn)程機(jī)器,并實(shí)時(shí)獲取遠(yuǎn)程機(jī)器的截圖,掌握當(dāng)前學(xué)生機(jī)上學(xué)生的實(shí)驗(yàn)情況。該功能采用Java多線程技術(shù),允許多個(gè)客戶端同時(shí)連接,因此該功能除了可以用來(lái)實(shí)現(xiàn)遠(yuǎn)程監(jiān)視作用外,還可以用來(lái)實(shí)現(xiàn)遠(yuǎn)程教學(xué)演示,提高實(shí)驗(yàn)教學(xué)的生動(dòng)性。
3 數(shù)據(jù)庫(kù)設(shè)計(jì)
因?yàn)镸icrosoft公司的SQL Server數(shù)據(jù)庫(kù)是目前流行的網(wǎng)絡(luò)數(shù)據(jù)庫(kù),本系統(tǒng)采用SQL Server2000作為后臺(tái)數(shù)據(jù)庫(kù)服務(wù)器。數(shù)據(jù)庫(kù)表的設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的一個(gè)非常重要的部分,為了系統(tǒng)的可擴(kuò)展性和靈活性,共設(shè)計(jì)20多張表,各表之間關(guān)系通過(guò)外鍵來(lái)關(guān)聯(lián),保證表間數(shù)據(jù)的完整與一致性。例如預(yù)約申請(qǐng)表中的實(shí)驗(yàn)課程編號(hào)、實(shí)驗(yàn)室編號(hào)、學(xué)院編號(hào)、專業(yè)編號(hào)等都是外鍵字段,這些字段需要與實(shí)驗(yàn)課程、實(shí)驗(yàn)室、學(xué)院、專業(yè)表中對(duì)應(yīng)的主鍵建立關(guān)系,以保證表間主鍵與外鍵字段中數(shù)據(jù)的完整與一致性。但由于系統(tǒng)所涉及的表數(shù)量太多,這里就不再將表結(jié)構(gòu)及表之間的關(guān)系逐一列舉。
4 系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)
系統(tǒng)采用功能強(qiáng)大的SQL Server2000作為后臺(tái)數(shù)據(jù)庫(kù),B/S部分采用AJAX結(jié)合J2EE的方式來(lái)實(shí)現(xiàn),C/S部分采用Java語(yǔ)言開發(fā)。整個(gè)系統(tǒng)將C/S與B/S兩種模式的優(yōu)勢(shì)進(jìn)行集中,對(duì)不同功能模塊采用不同的模式來(lái)設(shè)計(jì)。整個(gè)系統(tǒng)中將B/S部分功能與C/S部分功能緊密相連的是數(shù)據(jù)庫(kù),用戶在B/S客戶端發(fā)出的請(qǐng)求首先反應(yīng)到數(shù)據(jù)庫(kù)中,然后再由C/S客戶端從數(shù)據(jù)庫(kù)中獲取相應(yīng)的命令請(qǐng)求并在本機(jī)執(zhí)行。每當(dāng)客戶機(jī)開機(jī)時(shí),客戶端程序會(huì)自動(dòng)將本機(jī)信息與遠(yuǎn)程數(shù)據(jù)庫(kù)中對(duì)應(yīng)的機(jī)器信息進(jìn)行匹配,如果已存在,則更新在線狀態(tài),否則新增該機(jī)器信息。其中B/S系統(tǒng)中獲取遠(yuǎn)程機(jī)器上線和離線信息是通過(guò)AJAX與服務(wù)器進(jìn)行異步通信,動(dòng)態(tài)、實(shí)時(shí)、界面無(wú)刷新獲取。
5 結(jié)論
本系統(tǒng)是在結(jié)合筆者在實(shí)驗(yàn)室的工作經(jīng)驗(yàn),并分析高校實(shí)驗(yàn)室管理現(xiàn)狀的基礎(chǔ)上,將B/S與C/S兩種模式的優(yōu)點(diǎn)進(jìn)行集中,綜合多種技術(shù)開發(fā)完成的。系統(tǒng)的成功運(yùn)行,有效地解決了高校實(shí)驗(yàn)室目前管理上存在的問(wèn)題,充分體現(xiàn)了高校實(shí)驗(yàn)室管理的信息化、網(wǎng)絡(luò)化、科學(xué)化,提高了實(shí)驗(yàn)室管理水平、工作效率、實(shí)驗(yàn)室利用率,與以前的管理方式相比,在很大程度上降低了管理成本。系統(tǒng)的成功運(yùn)行對(duì)提高高校實(shí)驗(yàn)室管理水平具有很大的意義。
本系統(tǒng)的創(chuàng)新點(diǎn)是將B/S與C/S兩種模式結(jié)合起來(lái),并結(jié)合AJAX技術(shù),實(shí)現(xiàn)在Web界面對(duì)實(shí)驗(yàn)室機(jī)器進(jìn)行遠(yuǎn)程操作,使實(shí)驗(yàn)室管理不再受空間的限制,實(shí)驗(yàn)員或?qū)嶒?yàn)指導(dǎo)教師在任何一個(gè)網(wǎng)絡(luò)連通的地方,都能對(duì)實(shí)驗(yàn)進(jìn)行管理,對(duì)實(shí)驗(yàn)室的機(jī)器進(jìn)行管理,及時(shí)獲取實(shí)驗(yàn)室機(jī)器動(dòng)態(tài)信息及學(xué)生實(shí)驗(yàn)的實(shí)時(shí)情況。
參考文獻(xiàn)
[1]王劍.基于C/S和B/S混合體系結(jié)構(gòu)的信息管理系統(tǒng)的分析與設(shè)計(jì)[D].哈爾濱工程大學(xué),2005
[2]梅杏莉.基于C/S和B/S混合型結(jié)構(gòu)的主題公園營(yíng)運(yùn)管理信息系統(tǒng)研究[D].暨南大學(xué),2006
[3]Garcia M F,Reding J.Microsoft SQL Server 2000系統(tǒng)管理員寶典[M].北京:清華大學(xué)出版社,2001
[4]樊勝.C/S 與B/S 的結(jié)構(gòu)比較及Web 數(shù)據(jù)庫(kù)的訪問(wèn)方式[J].情報(bào)科學(xué),2001,19(4): 443~445
[5]張松,陳志剛,金亮.開放實(shí)驗(yàn)室管理系統(tǒng)設(shè)計(jì)方案比較及實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2004(03):230-232
[6]廖志英,董安邦.基于C/S和B/S混合結(jié)構(gòu)的管理信息系統(tǒng)運(yùn)行模式[J].計(jì)算機(jī)工程與應(yīng)用,2002(2):182-186
[7]覃云,韓伯棠,王霞.基于NET的C/S與B/S混合結(jié)構(gòu)的MIS開發(fā)研究[J].北京理工大學(xué)學(xué)報(bào):社會(huì)科學(xué)版,2002(04):52-56