高靜
摘 要: 設(shè)計(jì)了基于J2EE的網(wǎng)上報(bào)名系統(tǒng)。該系統(tǒng)利用JSP、SERVLET等主流技術(shù)實(shí)現(xiàn)系統(tǒng)主體功能,對于系統(tǒng)建設(shè)中的關(guān)鍵問題,提出了可行的解決方案。通過在實(shí)際報(bào)名工作中的應(yīng)用表明,該系統(tǒng)能夠充分保證考生信息采集的安全性、完整性和規(guī)范性,可幫助考務(wù)人員動(dòng)態(tài)地管理及分析考試相關(guān)信息,滿足了報(bào)名工作高效、準(zhǔn)確的要求。
關(guān)鍵詞: 報(bào)名; J2EE; 技術(shù)實(shí)現(xiàn); 解決方案
中圖分類號(hào):G202 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2015)11-47-04
Abstract: Design an online registration system based on J2EE. The system uses JSP, SERVLET and other mainstream technology to achieve the system's main function. For the key problems in the construction of the system, the feasible solutions are put forward in this paper. Through the application in the registration practice, the system is proved can fully guarantee the security, integrity and normative of the examinee information acquisition, can help the exam officers' dynamic management and analysis of examination related information, to satisfy the requirements of the registration work efficiently and accurately.
Key words: online registration; J2EE; technology implementation; solution
0 引言
網(wǎng)絡(luò)技術(shù)發(fā)展迅猛,教育信息化逐步走向深入。基于Web的考試報(bào)名系統(tǒng)在各類考試中的應(yīng)用也逐漸廣泛,成為研究的熱點(diǎn)之一[1]。當(dāng)前,我國教育事業(yè)發(fā)展迅速,考試規(guī)模逐漸加大,報(bào)名系統(tǒng)訪問量和并發(fā)量也不斷增大,這對網(wǎng)上報(bào)名系統(tǒng)提出了更高的要求。
全國計(jì)算機(jī)等級(jí)考試目前已經(jīng)開考了多次,作為江蘇省重要考點(diǎn)之一,南京理工大學(xué)已成功組織了多次考試工作。由于報(bào)考相關(guān)信息復(fù)雜,報(bào)名人數(shù)非常多,每年需要安排大量人力和時(shí)間完成學(xué)生報(bào)考信息的錄入和費(fèi)用收繳。傳統(tǒng)的報(bào)名方式存在許多不足[2-3]。
⑴ 需要人為辨認(rèn)考生填報(bào)的信息,所收集的考生姓名、身份證號(hào)以及準(zhǔn)考證號(hào)碼等錯(cuò)誤率較高。
⑵ 時(shí)間難以控制,尤其是費(fèi)用統(tǒng)計(jì)、進(jìn)度統(tǒng)計(jì)、拍照非常不方便。
⑶ 考務(wù)人員的工作量很大,需要手工逐一輸入相關(guān)信息。
⑷ 獲取報(bào)名材料的渠道單一,難以實(shí)現(xiàn)雙向交流。
⑸ 采集的考生信息簡單,不利于對考生的管理。
⑹ 不利于管理者動(dòng)態(tài)掌握報(bào)名信息,缺乏對數(shù)據(jù)的分析、統(tǒng)計(jì)。
引進(jìn)現(xiàn)代化的教育技術(shù)手段是解決以上問題的關(guān)鍵。本文基于學(xué)校網(wǎng)絡(luò)信息化概況,研發(fā)了一套“基于J2EE架構(gòu)的全國計(jì)算機(jī)等級(jí)考試網(wǎng)上報(bào)名系統(tǒng)”,從而有效簡化了報(bào)名手續(xù),提高了工作效率,降低了報(bào)名成本,提升了信息準(zhǔn)確性,提高了考試報(bào)名工作的管理水平,促進(jìn)報(bào)名工作朝著科學(xué)化、正規(guī)化和無紙化的方向發(fā)展。
1 網(wǎng)上報(bào)名系統(tǒng)的相關(guān)技術(shù)
本系統(tǒng)采用基于J2EE和MVC設(shè)計(jì)模式的多層B/S架構(gòu),如圖1所示。B/S模式采用常見的、易用的客戶端瀏覽器,實(shí)現(xiàn)了客戶端的零維護(hù),在系統(tǒng)升級(jí)和修改的時(shí)候,只需維護(hù)服務(wù)器端。這樣既節(jié)省了投資成本,又方便了使用。B/S結(jié)構(gòu)主要由瀏覽器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器組成,由中間件來完成與數(shù)據(jù)庫服務(wù)器交互,系統(tǒng)采用JSP/Servlet容器Tomcat。
1.1 JSP技術(shù)
基于JSP開發(fā)的Web應(yīng)用程序是跨平臺(tái)的,可以在Windows、Linux和UNIX操作系統(tǒng)上運(yùn)行。JSP為創(chuàng)建高度動(dòng)態(tài)的Web應(yīng)用提供了一個(gè)獨(dú)特的開發(fā)環(huán)境。
JSP基于強(qiáng)大的Java語言,具有良好的伸縮性,與Java Enterprise API緊密地集成在一起,主要特點(diǎn)如下[3]:
⑴ 將內(nèi)容的生成和顯示進(jìn)行分離;
⑵ 生成可重用的組件;
⑶ 采用標(biāo)識(shí)簡化頁面開發(fā);
⑷ JSP能提供所有Servlet功能;
⑸ 健壯的存儲(chǔ)管理和安全性;
⑹ JSP的平臺(tái)適應(yīng)性更廣,這是JSP比ASP的優(yōu)越之處。幾乎所有平臺(tái)都支持Java、 JSP+JavaBeans,它們可以在任何平臺(tái)下通行無阻。從一個(gè)平臺(tái)移植到另一個(gè)平臺(tái),JSP和JavaBeans甚至不用重新編譯。
正是因?yàn)樘峁┛缙脚_(tái)的功能,實(shí)現(xiàn)極度的伸縮能力,所以增加了JSP的復(fù)雜性。Java的運(yùn)行速度是用class常駐內(nèi)存來完成的,所以它相對來說確實(shí)也有“較低性能價(jià)格比”。
1.2 Servlet技術(shù)
Servlet被譯為服務(wù)器小程序,與運(yùn)行在客戶端的applet程序相對應(yīng),他們都是運(yùn)用Java語言編寫的程序。Servlet沒有Main方法,只有一些特定的方法用于啟動(dòng)、執(zhí)行、退出。它可以與運(yùn)行在客戶端的applet程序進(jìn)行交互,也可以直接與客戶端的HTML頁面交互。
Servlet是一個(gè)與協(xié)議無關(guān)、跨平臺(tái)的服務(wù)方構(gòu)件,如同applet集成到WWW瀏覽器一樣,它被集成到服務(wù)器中,可以實(shí)現(xiàn)網(wǎng)絡(luò)上遠(yuǎn)程動(dòng)態(tài)加載。在最初推出它的時(shí)候,主要是把它集成到HTTP的Web服務(wù)器,但是隨著對它的不斷改進(jìn),已經(jīng)可以集成到實(shí)現(xiàn)Java服務(wù)器API的任何機(jī)器上。
2 網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)
本文選擇MVC開發(fā)模式來設(shè)計(jì)網(wǎng)上報(bào)名系統(tǒng)。
MVC(Model-View-Controller),即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層-邏輯層、視圖層、控制層。
邏輯層負(fù)責(zé)業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則制定。業(yè)務(wù)流程的處理過程對其他層來說是黑箱操作,邏輯層接受視圖請求的數(shù)據(jù),并返回最終的處理結(jié)果。邏輯層包含了應(yīng)用程序的核心,它封裝了應(yīng)用程序的數(shù)據(jù)結(jié)構(gòu)和事務(wù)邏輯,集中體現(xiàn)了應(yīng)用程序的狀態(tài)。有時(shí)候僅包含狀態(tài)信息,因?yàn)樗⒉涣私庖晥D或控制器的信息。
業(yè)務(wù)模型的設(shè)計(jì)可以說是MVC最主要的核心。業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對象的數(shù)據(jù)保存(持續(xù)化)。比如將一張報(bào)名表保存到數(shù)據(jù)庫,從數(shù)據(jù)庫獲取報(bào)名表。
視圖按特定方式顯示“業(yè)務(wù)邏輯模式”的數(shù)據(jù)。通常是主動(dòng)直接從Model獲取數(shù)據(jù),也允許接受Model的數(shù)據(jù)變化時(shí)發(fā)送的通知,更新顯示。
控制層決定應(yīng)用的行為,接受用戶輸入,根據(jù)輸入選擇特定的Model,選擇輸出所用的View。
3 網(wǎng)上報(bào)名系統(tǒng)的實(shí)現(xiàn)及關(guān)鍵問題解決
3.1 系統(tǒng)功能實(shí)現(xiàn)
系統(tǒng)總體上分為四個(gè)功能模塊,分別是:考生報(bào)名模塊、考務(wù)管理模塊、統(tǒng)計(jì)分析模塊、師生互動(dòng)模塊。各模塊功能層次結(jié)構(gòu)關(guān)系如圖5所示。
網(wǎng)上報(bào)名系統(tǒng)總流程首先是考生在網(wǎng)上預(yù)報(bào)名,然后考務(wù)人員在管理模塊審核考生信息,若不合格則要求考生修改,直到滿足要求為止,最后是考生帶著證件到現(xiàn)場確認(rèn)信息,并簽寫信息確認(rèn)單,領(lǐng)取報(bào)名表下聯(lián),在報(bào)名表下聯(lián)規(guī)定的時(shí)間領(lǐng)取準(zhǔn)考證。
考生報(bào)名模塊,主要是為考生提供的一系列功能入口,系統(tǒng)會(huì)校驗(yàn)輸入信息的合法性,同時(shí)會(huì)在后臺(tái)確認(rèn)考生報(bào)考資格已經(jīng)補(bǔ)考資格。
考務(wù)管理模塊,主要是考務(wù)員負(fù)責(zé)的工作,照片規(guī)范的審核、現(xiàn)場確認(rèn)打印、信息編輯以及批量報(bào)名的導(dǎo)入,同時(shí)提供報(bào)名系統(tǒng)的開啟和關(guān)閉權(quán)限,以及重要參數(shù)的設(shè)置。
統(tǒng)計(jì)分析模塊,主要是面向領(lǐng)導(dǎo)層面,給領(lǐng)導(dǎo)決策提供依據(jù)。如報(bào)考級(jí)別統(tǒng)計(jì),系統(tǒng)會(huì)實(shí)時(shí)統(tǒng)計(jì)不同考試級(jí)別的報(bào)名人數(shù),依次,會(huì)對后期的報(bào)考級(jí)別設(shè)置特別是考試培訓(xùn)提供可靠依據(jù)。
通過師生交流平臺(tái),考生可以更方便的了解考試政策,更方便的解決自己的疑問;同時(shí),考務(wù)工作更加便捷人性化。
3.2 網(wǎng)上報(bào)名系統(tǒng)優(yōu)點(diǎn)分析
⑴ 節(jié)省時(shí)間、忽略空間。考生只需通過網(wǎng)絡(luò)隨時(shí)登錄系統(tǒng)、錄入信息、修改信息等。避免了傳統(tǒng)報(bào)名方式中因?yàn)闀r(shí)間沖突或者地域障礙而造成的不便。提高了信息采集的及時(shí)性、準(zhǔn)確性,省卻傳統(tǒng)方式因?yàn)槿藶橐蛩囟斐傻牟槐匾穆闊5]。
⑵ 方便實(shí)用、安全性高。網(wǎng)上報(bào)名系統(tǒng)設(shè)有嚴(yán)格的保密處理技術(shù),考生的個(gè)人信息、填報(bào)信息、考試成績等情況均會(huì)被系統(tǒng)做完善的安全加密處理,沒有合法的權(quán)限與口令是無法隨便瀏覽和修改的。系統(tǒng)設(shè)計(jì)了明晰的菜單導(dǎo)航機(jī)制,界面設(shè)計(jì)更加實(shí)用化、人性化,并且滿足用戶審美要求,實(shí)現(xiàn)了賞心悅目的感覺。
⑶ 準(zhǔn)確性高、效率提升?;诰W(wǎng)絡(luò)的報(bào)名系統(tǒng)不再需要招考人員錄入海量繁雜的考生信息,也無需花費(fèi)大量的精力進(jìn)行數(shù)據(jù)校驗(yàn),把錄入工作下放給考生自己負(fù)責(zé),同時(shí),在系統(tǒng)客戶端實(shí)現(xiàn)腳本自動(dòng)校驗(yàn)。這樣避免了錄入錯(cuò)誤,大大減少了招考人員的工作量。網(wǎng)上報(bào)名系統(tǒng)方便快捷的特點(diǎn)提高了工作質(zhì)量、使報(bào)名工作更具準(zhǔn)確性。
⑷ 權(quán)責(zé)明確??忌鷮ψ约禾顖?bào)的內(nèi)容也負(fù)要相應(yīng)的責(zé)任,考生必須確保自己填報(bào)的內(nèi)容準(zhǔn)確無誤,需要在系統(tǒng)打印出的報(bào)名表上簽字確認(rèn),這樣便給雙方都提供了法律保障。系統(tǒng)管理人員也是根據(jù)權(quán)限設(shè)置各負(fù)其責(zé),權(quán)責(zé)明確,系統(tǒng)管理人員的操作記錄準(zhǔn)確完整,便于后期查驗(yàn)。
⑸ 決策支持。系統(tǒng)提供了一系列查詢統(tǒng)計(jì)功能,便于領(lǐng)導(dǎo)動(dòng)態(tài)掌握報(bào)考情況,及時(shí)統(tǒng)計(jì)相關(guān)信息,便于對后續(xù)有關(guān)事宜提前做出安排。
3.3 系統(tǒng)安全機(jī)制
網(wǎng)上報(bào)名系統(tǒng)的風(fēng)險(xiǎn)主要來自兩方面:數(shù)據(jù)安全和系統(tǒng)本身的可靠性。
在數(shù)據(jù)安全方面,可采取以下措施:對客戶登錄系統(tǒng)設(shè)置最大累加重試次數(shù),以防止密碼被無限測試;基于用戶,采用多層權(quán)限保護(hù)及靈活的賦權(quán)方法,也就是不同的用戶對于數(shù)據(jù)有不同的使用權(quán)限;用戶密碼的設(shè)計(jì)符合大小寫敏感、字母數(shù)字特殊字符混編等要求,經(jīng)加密和一定的錯(cuò)位處理后存放在數(shù)據(jù)庫中;關(guān)鍵地方記錄到日志。
在系統(tǒng)本身可靠性方面:與校園網(wǎng)的安全機(jī)制相結(jié)合,設(shè)立防火墻,以及web防火墻;在網(wǎng)絡(luò)級(jí)、操作系統(tǒng)級(jí)、數(shù)據(jù)庫級(jí)均采取一定的安全措施,保證系統(tǒng)的安全;系統(tǒng)采取完整備份和增量備份相結(jié)合的數(shù)據(jù)備份策略,當(dāng)系統(tǒng)遭遇災(zāi)難性破壞或進(jìn)行歷史性數(shù)據(jù)查詢時(shí),能夠及時(shí)恢復(fù)或再現(xiàn)歷史數(shù)據(jù)的實(shí)時(shí)狀態(tài);記錄用戶登錄日志,系統(tǒng)自動(dòng)記錄用戶操作的功能、時(shí)間、IP地址、MAC地址等信息以供定期檢查,以便一發(fā)現(xiàn)異常情況能得到及時(shí)處理;限制高權(quán)限管理員能登錄的IP地址范圍,以及密碼有不定期修改功能。
3.4 系統(tǒng)數(shù)據(jù)庫連接池機(jī)制
動(dòng)態(tài)Web網(wǎng)站往往用數(shù)據(jù)庫存儲(chǔ)的信息生成Web頁面,每一個(gè)頁面請求均會(huì)導(dǎo)致至少一次數(shù)據(jù)庫訪問。連接數(shù)據(jù)庫不僅要開銷一定的通訊和內(nèi)存資源,還必須完成用戶驗(yàn)證、安全上下文配置這類任務(wù),因而往往成為最耗時(shí)最不穩(wěn)定的操作。在本系統(tǒng)中通過連接池管理,只有當(dāng)用戶真正需要進(jìn)行數(shù)據(jù)庫操作時(shí),才向連接池申請一個(gè)連接,數(shù)據(jù)庫操作完畢,立即釋放連接到連接池中,以供其他操作使用。這樣,不僅大大提高了數(shù)據(jù)庫連接的使用效率,使得大量操作可以共享較少的數(shù)據(jù)庫連接,也大大節(jié)省了建立連接的時(shí)間。
本系統(tǒng)中,連接池管理包提供以下功能:裝載和注冊JDBC驅(qū)動(dòng)程序;根據(jù)在屬性文件中定義的屬性創(chuàng)建連接池對象;實(shí)現(xiàn)連接池名字與其實(shí)例之間的映射;跟蹤客戶程序?qū)B接池的引用,保證在最后一個(gè)客戶程序結(jié)束時(shí)安全地關(guān)閉所有連接池。
4 總結(jié)
本系統(tǒng)已經(jīng)投入運(yùn)行,在使用中未出現(xiàn)任何性能問題和數(shù)據(jù)安全、系統(tǒng)安全事故。系統(tǒng)性能穩(wěn)定、安全可靠,用戶界面操作便捷,各項(xiàng)指標(biāo)達(dá)到了設(shè)計(jì)要求,實(shí)現(xiàn)了辦公自動(dòng)化。網(wǎng)上報(bào)名系統(tǒng)在后期運(yùn)行將發(fā)揮極大的作用。后期,我們將根據(jù)情況的變化,將各種實(shí)際因素考慮進(jìn)去,對系統(tǒng)進(jìn)行持續(xù)的修改、充實(shí)和完善,提高系統(tǒng)的科學(xué)性,以期達(dá)到最佳使用效果。在以后的版本研發(fā)中,還應(yīng)注意以下三個(gè)問題:
⑴ 充分利用現(xiàn)有的電子商務(wù)網(wǎng)上支付系統(tǒng),以簡化考生報(bào)名費(fèi)收繳的手續(xù),節(jié)省財(cái)務(wù)人力的支出;[4]
⑵ 充分利用短信平臺(tái)功能,實(shí)現(xiàn)短信接入,進(jìn)一步實(shí)現(xiàn)師生雙向交流,提升服務(wù)理念,提高服務(wù)水平,更好地為學(xué)生服務(wù);
⑶ 考慮與數(shù)字化校園相關(guān)應(yīng)用系統(tǒng)的開發(fā)接口問題,以做到充分與數(shù)字化校園無縫鏈接,共享數(shù)據(jù),統(tǒng)一數(shù)據(jù)入口與存放,同時(shí)擴(kuò)大網(wǎng)上報(bào)名系統(tǒng)的應(yīng)用范圍。
通過系統(tǒng)的不斷完善和改進(jìn),以期進(jìn)一步提高考試報(bào)名工作的管理水平,提高網(wǎng)絡(luò)環(huán)境下的教育質(zhì)量和教學(xué)效益。
參考文獻(xiàn)(References):
[1] 寧瑩瑩.基于J2EE架構(gòu)的網(wǎng)上考試報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2010.5:79
[2] 管小衛(wèi),丁琳.基于Web的全國計(jì)算機(jī)等級(jí)考試報(bào)名系統(tǒng)設(shè)
計(jì)[J].電腦知識(shí)與技術(shù),2006.6:203
[3] 林峰.基于Servlet的網(wǎng)上報(bào)名系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱理
工大學(xué)碩士學(xué)位論文,2007.
[4] 羅惠平.網(wǎng)上報(bào)名系統(tǒng)技術(shù)實(shí)現(xiàn)框架研究[J].科技創(chuàng)業(yè)月刊,
2010.4:152-154
[5] 王平安.自主招生網(wǎng)上報(bào)名系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].山東師范
大學(xué)碩士學(xué)位論文,2010.