網(wǎng)絡(luò )招生錄取系統的設計
論文關(guān)鍵詞:全自動(dòng)投檔 VFP數據庫 網(wǎng)絡(luò )數據庫 安全性 顯式加鎖
相關(guān)論文查閱:大學(xué)生論文、工商財務(wù)論文、經(jīng)濟論文、教育論文 熱門(mén)畢業(yè)論文
論文摘要:主要介紹了《網(wǎng)絡(luò )招生錄取系統》中全自動(dòng)投檔的設計與實(shí)現;以及使用VFF數據庫作為網(wǎng)絡(luò )數據庫的缺點(diǎn)和改進(jìn)方法。
中招、高招的招生錄取工作已普遍采用計算機局域網(wǎng)或遠程網(wǎng)進(jìn)行,實(shí)現了考生信息電子化及全程錄取信息的計算機管理,顯著(zhù)提高了錄取工作的效率。但現階段的投檔多是將以前的人工投檔模式改為通過(guò)人工操作計算機進(jìn)行,沒(méi)有利用計算機快速、強大的數據分檢處理能力將投檔工作交由計算機全自動(dòng)完成。2000年本人為黑龍江省招生辦開(kāi)發(fā)了中招《網(wǎng)絡(luò )招生錄取系統》和《考務(wù)管理系統》,首次實(shí)現了招生錄取的網(wǎng)絡(luò )全自動(dòng)投檔,使招生錄取更加公平、公正,并大大地提高了工作效率。
該系統的開(kāi)發(fā),考慮到適用對等網(wǎng)絡(luò )、數據的上報及下傳(當時(shí)的各地市招生辦均使用VFP或FOXPRO)、系統的梯度開(kāi)發(fā)等因素采用了VFP數據庫。由于VFP數據庫是桌面型的關(guān)系數據庫,作為網(wǎng)絡(luò )數據庫使用存在保密性、安全性差,網(wǎng)絡(luò )數據流量大等缺點(diǎn),系統在克服這些問(wèn)題方面采用了諸多有效的方法,使得本系統的應用獲得了明顯的成功,系統一直應用至今。
1、提高數據庫安全性、保密性的手段
VFP數據庫的數據表是明碼的文件存儲方式,通過(guò)文件共享方式在網(wǎng)絡(luò )上使用,因此,其數據的安全性、保密性差。在系統中使用以下兩種手段配合來(lái)提高數據的安全性、保密性。
(1)在應用系統中進(jìn)行網(wǎng)絡(luò )鏈接,而不是在WINDOws啟動(dòng)時(shí)進(jìn)行網(wǎng)絡(luò )登錄鏈接,應用系統退出時(shí)斷開(kāi)網(wǎng)絡(luò )鏈接,這樣可以隱藏網(wǎng)絡(luò )鏈接。網(wǎng)絡(luò )鏈接通過(guò)調用WINDOws的API函數實(shí)現,先用VFP的DECLARE命令聲明外部函數,調用WNetAddC:onnection)實(shí)現添加鏈接,用Wnet-CancelConnection()斷開(kāi)鏈接等,具體使用方法可參見(jiàn)微軟的MSDN幫助文檔。
(2)使應用系統總在前臺運行。實(shí)現方法包設置_screen. windowstate = 2使應用系統窗口最大化,自動(dòng)充滿(mǎn)整個(gè)屏幕);一screen. AlwaysOn-Top= . t.(使應用系統始終處在前臺運行);_screen. minbutton= . f.(使用戶(hù)無(wú)法最小化應用系統窗口)等。這種用法本身與網(wǎng)絡(luò )無(wú)關(guān),但是配合前項一起使用,使得用戶(hù)在系統運行時(shí),無(wú)法在前臺運行其它任務(wù),就無(wú)法在前臺查看網(wǎng)絡(luò )鏈接等,有效地隱蔽了網(wǎng)絡(luò )鏈接,能很好地保護服務(wù)器上的數據文件不被非法使用,比用其它方法簡(jiǎn)單高效。再配合對各用戶(hù)分配不同的用戶(hù)名、密碼、操作權限(可動(dòng)態(tài)設置并實(shí)時(shí)生效)、操作日志(重要操作的操作軌跡全程記錄)等,實(shí)現了對數據的有效保護,應用效果很好。
2、提高數據一致性,降低數據冗余及減少網(wǎng)絡(luò )數據傳輸量等
(1)本系統的考生自然狀況、成績(jì)、志愿、錄取結果等全部信息放到一個(gè)考生數據表中,每個(gè)考生對應一條記錄,各項盡量使用代碼字段。另有歷史記錄表,保存考生投檔、錄取的軌跡等。各類(lèi)學(xué)校的信息表,分類(lèi)保存學(xué)校的詳細招生計劃等有關(guān)信息。還有各種代碼對照表,用戶(hù)管理表,操作日志表等。將考生信息集中存放到一個(gè)表中能最大限度地保持數據一致性,在考生數據表中增加一標識字段,統一表示該考生的各種狀態(tài)(投檔狀態(tài)、錄取狀態(tài)、投檔后的退檔、錄取后的退檔、直接錄取、掛起狀態(tài)、死檔狀態(tài)等)。這樣考生的錄取處理很多情況下只需對此字段處理即可,數據處理量大大降低。
(2) VFP的數據操作都是在本地機器上進(jìn)行的,一般不能以過(guò)程提交的方式在服務(wù)器端進(jìn)行,再將結果返回。如果每次操作都從服務(wù)器取數據然后在本機進(jìn)行,則網(wǎng)絡(luò )數據傳輸量太大,網(wǎng)絡(luò )將不堪重負。對于在用戶(hù)權限內的投檔、錄取、退檔、檔案掛起、追加、修改、刪除等有關(guān)改變數據的操作采取了分兩步進(jìn)行的方式,第一步在用戶(hù)機的臨時(shí)表中進(jìn)行,第二步通過(guò)《提交》按鈕寫(xiě)到服務(wù)器數據表中。分兩步進(jìn)行使得只在提交時(shí)使用服務(wù)器上的數據庫,一方面大大降低了網(wǎng)絡(luò )數據流量,另一方面便于程序進(jìn)行走向控制,可保留當前的編輯操作等待新的提交等。在提交時(shí),根據情況系統中采用文件加鎖函數flock()和記錄加鎖函數rlock()對服務(wù)器上的數據表進(jìn)行顯式加鎖,來(lái)解決數據寫(xiě)沖突的問(wèn)題。這里采用顯式加鎖方式,不使用VFP的隱式加鎖機制,可確保一次數據編輯操作的提交為原語(yǔ)性操作(要么完成,要么全不做),提高數據的一致性。
本系統在考生記錄100,000條左右,主數據表40MB大小,同時(shí)有幾十個(gè)用戶(hù),10M局域網(wǎng)中使用時(shí),沒(méi)有出現網(wǎng)絡(luò )阻塞現象。
3、全自動(dòng)投檔
全自動(dòng)投檔(或錄取)指根據考生的志愿和各院校的招生計劃(可具體到專(zhuān)業(yè)的招生計劃),按具體的投檔原則(分數等)進(jìn)行排隊,以一定的比例投放考生檔案或直接錄取。確保按考生志愿公平投檔是其前提;對各種復雜的投檔原則的實(shí)現則是其中的難點(diǎn);快速高效地實(shí)現并保存完整的投檔軌跡可查也是本系統實(shí)際應用的具體要求。另外,還需支持分批次投檔,分段投檔,投檔原則可調,個(gè)別院校的單獨投檔,能進(jìn)行恢復等等。通過(guò)細致的調研分析,在確保對考生和招生院校公平的前提下,設計出了一個(gè)具有較強的適應性的全自動(dòng)投檔方法(原則)如下:
(1)同一批次(注:投檔一般按招生類(lèi)別、院校類(lèi)別、分數區間等分成多個(gè)類(lèi)別,依次分別進(jìn)行,對應多個(gè)批次)的志愿按志愿順序處理,在批次投檔分數線(xiàn)上的考生的同一順序志愿,依據各院校的總投檔人數等依次判斷處理完才進(jìn)人后一志愿的處理。前一志愿未全部判別處理完,后續志愿不能先處理,以確保對考生和院校的公平性。
(2)同一批次內可以設置按投檔分數等條件分段進(jìn)行循環(huán)處理。同一段內同一志愿處理完畢轉同一段內下一志愿的處理,同一段內指定的所有志愿均處理完畢再轉入低一段的處理,循環(huán)此過(guò)程,直至該批次投檔底線(xiàn)。引人分段處理方式的目的是:通過(guò)設置不同的分段數值,將志愿的優(yōu)先性和分數的優(yōu)先性結合起來(lái)。分段區間取最大值,即該批次內不再分段,則主要體現志愿順序優(yōu)先,同一順序志愿內的才以分數優(yōu)先;如分段區間取最小值1,則主要體現分數優(yōu)先,同分時(shí)才志愿順序優(yōu)先;取其它值時(shí)采用分段優(yōu)先處理,同一段內先以志愿順序優(yōu)先,同一志愿順序再以分數優(yōu)先。
(3)對于同一段內、同一順序志愿、志愿為同一院校(或專(zhuān)業(yè))并且投檔條件完全相同的考生,一律進(jìn)行平等地投檔處理(可能超出某院校的應投檔人數)。
(4)投檔比例不大于1為宜,盡量避免退檔現象。
(5)一個(gè)批次可再分成多個(gè)小批次獨立進(jìn)行投檔(不同于一個(gè)批次內的分段循環(huán)處理)。通過(guò)逐次降低投檔底線(xiàn)分多批次投檔,高于該批次未能投檔的考生可輔以人工投檔等方式在下一小批次之前處理,盡量避免高分者落榜。
為了提高全自動(dòng)投檔的速度,使用速度很快的SELECT SQL語(yǔ)句在主數據表中選取滿(mǎn)足條件的考生記錄至臨時(shí)表中;采用由需投檔院校管理表的記錄控制外層循環(huán),一個(gè)院校在某志愿處理完,再進(jìn)行下一個(gè)院校在該志愿的處理(由于是同一順序志愿的處理,沒(méi)有交集,不影響公平性),減少了記錄指針定位次數,有效地縮短了處理時(shí)間;在進(jìn)入內循環(huán)時(shí)過(guò)濾考生記錄,并使考生記錄按某志愿為該院校的按投檔條件是邏輯連續的(使用索引或排序手段。對于有些院;驅(zhuān)業(yè)的投檔排序條件需單獨設置的,符合前述投檔原則的可在其計劃管理表中進(jìn)行設置,在排序中引用),使用指針下移一條記錄的方法依次處理記錄,大大加快了指針移動(dòng)速度。具體實(shí)現時(shí)還可以根據所采用的數據庫的特點(diǎn)進(jìn)行優(yōu)化。實(shí)驗表明對全省近十萬(wàn)考生、約200所投檔院校的一次全自動(dòng)投檔,在奔騰級微機(2000年)兩分鐘內完成。通過(guò)院校投檔設置項的設置,全自動(dòng)投檔可以用來(lái)對部分院校(或部分專(zhuān)業(yè))進(jìn)行投檔,還可以?xún)H使用一部分志愿進(jìn)行投檔等。
對需要單獨投檔的特殊院校,系統提供單個(gè)院校的自動(dòng)投檔功能,其中可以使用不同順序志愿降分排序投檔方法(全自動(dòng)投檔不能采用此法.因為不宜越序先處理后續志愿,否則會(huì )造成違背考生志愿順序及各院校不平等的現象)。系統同時(shí)提供通過(guò)輸入組合條件來(lái)指定考生范圍的批量投檔功能,用來(lái)對單個(gè)院校進(jìn)行補充投檔。
在各類(lèi)招生錄取工作采用計算機全自動(dòng)投檔方式將大大提高錄取效率,使招生錄取更加公平、合理,顯著(zhù)地降低社會(huì )成本,同時(shí)能有效地增加志愿數量,降低考生報志愿的難度等。
相關(guān)論文查閱:大學(xué)生論文、工商財務(wù)論文、經(jīng)濟論文、教育論文 熱門(mén)畢業(yè)論文
【網(wǎng)絡(luò )招生錄取系統的設計】相關(guān)文章:
基于Web 的網(wǎng)絡(luò )答疑系統設計開(kāi)題報告11-21
汽車(chē)網(wǎng)絡(luò )營(yíng)銷(xiāo)系統方案設計提綱12-05
計算機畢業(yè)設計開(kāi)題報告(網(wǎng)絡(luò )在線(xiàn)測系統)12-04
排課系統的設計開(kāi)題報告06-14
XML技術(shù)在網(wǎng)絡(luò )招生中的應用03-29
網(wǎng)絡(luò )在線(xiàn)測試系統參考文獻12-07
- 相關(guān)推薦