劉旺
摘要:伴隨著互聯(lián)網(wǎng)技術(shù)大發(fā)展的浪潮,人們可以便捷地從網(wǎng)絡(luò)上獲取想要的信息。正是在這樣的大背景下,門戶平臺已經(jīng)成為當(dāng)下各類企業(yè)、機(jī)構(gòu)等發(fā)布信息的重要方式。該文所介紹的系統(tǒng)使用MVC設(shè)計模式將視圖、模型和控制進(jìn)行分離。為系統(tǒng)使用者構(gòu)造了一個簡單易用,界面美觀的信息發(fā)布平臺。系統(tǒng)主要實(shí)現(xiàn)了用戶注冊、登錄、課程管理、教師管理、學(xué)生案例管理和在線咨詢等功能。
關(guān)鍵詞:MVC分層設(shè)計;SSM框架;B/S模式
中圖分類號:TP393? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)23-0111-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
1 背景
科學(xué)技術(shù)地快速發(fā)展顛覆了我們獲取信息的方式,多年前大街小巷隨處可見售賣報紙、雜志、期刊的崗?fù)がF(xiàn)在早已經(jīng)消失得無影無蹤,這些傳統(tǒng)的信息傳播媒介被互聯(lián)網(wǎng)的普及所取代,而各種不同類型的WE程序也得以運(yùn)用到如政府、企業(yè)、高校等各類實(shí)體機(jī)構(gòu)的宣傳和日常事務(wù)的管理中去。本系統(tǒng)設(shè)計開發(fā)的Web應(yīng)用程序主要面向教育培訓(xùn)機(jī)構(gòu),為他們提供一個輕便化、易管理的信息交流發(fā)布平臺。
2 相關(guān)技術(shù)
2.1 MVC分層設(shè)計
MVC分層模式既Model View Controller的首字母縮寫,分別為模型、視圖和控制。利用MVC分層方式構(gòu)建B/S模式的系統(tǒng)時,這三個組件各自扮演不同的角色,又能緊密協(xié)同完成任務(wù)。視圖層可以簡單理解為頁面,它是系統(tǒng)與用戶交互的窗口;模型層主要具體負(fù)責(zé)系統(tǒng)業(yè)務(wù)流程的處理,是整個系統(tǒng)的核心部分;控制層顧名思義既負(fù)責(zé)具體業(yè)務(wù)流向的控制;分層的思想將會使得業(yè)務(wù)處理更為明確、細(xì)化,維護(hù)也變得更加方便。如圖1所示。
2.2 SSM開發(fā)框架簡介
SSM框架是Spring,Spring MVC和MyBatis的縮寫,也是繼SSH之后,當(dāng)前最為主流J2EE企業(yè)級框架。其中,Spring通過AOP和Ioc可以很好地實(shí)現(xiàn)層級解耦合業(yè)務(wù)對象管理;Spring MVC利用分發(fā)器DispacherServlet將所有資源和請求進(jìn)行分發(fā)處理,相當(dāng)于整個系統(tǒng)的“控制室”;持久層框架技術(shù)Mybatis對數(shù)據(jù)庫的操作也會變得更加方便,安全。通過SSM框架的搭建的系統(tǒng)只需要改動相對應(yīng)配置就可以對項目進(jìn)行管理,這也很大程度上為工程的開發(fā)帶來了諸多便利。
3 系統(tǒng)分析與設(shè)計
通過現(xiàn)實(shí)需求的分析與歸納,本信息發(fā)布系統(tǒng)的整體結(jié)構(gòu)。如圖2所示。
3.1 系統(tǒng)功能分析
通過評析,將系統(tǒng)功能做如下劃分:
1)管理員注冊與登錄:作為系統(tǒng)后臺的實(shí)際操作者,想要使用系統(tǒng)必須通過注冊成為管理員。非管理員可以通過注冊,填寫相關(guān)信息成為管理員進(jìn)而操作系統(tǒng)。
2)課程發(fā)布與管理:登錄成功后,管理員可以通過課程管理模塊對課程進(jìn)行添加、刪除和修改,這其中包含課程的分類信息、課堂模式、班制等內(nèi)容的操作。
3)師資管理:管理員登錄后,可以添加、刪除以及修改師資的相關(guān)信息,具體內(nèi)容有圖片、文字說明,從教經(jīng)歷等。
4)學(xué)生案例管理:添加學(xué)生照片、綁定緊急聯(lián)系人、綁定相關(guān)課程等。
5)在線咨詢:方便前臺用戶在網(wǎng)頁中直接與管理員或客服交流。
6)多頁瀏覽:當(dāng)數(shù)據(jù)無法在當(dāng)前頁面全部顯示時,就要讓信息分頁展示。用戶也可以選擇跳轉(zhuǎn)到指定的某個頁碼。
7)留言簿:前端用戶開通過留言簿向管理員提出信息,這些信息是長時間保存的,管理員可通過留言列表進(jìn)行翻看和回復(fù)。
8)基礎(chǔ)信息瀏覽:前端用戶在管理員發(fā)布信息之后,可以對信息進(jìn)行瀏覽。
3.2 數(shù)據(jù)庫設(shè)計
4 實(shí)現(xiàn)過程
4.1 注冊/登錄界面
進(jìn)入主界面后用戶可以輸入密碼進(jìn)行登錄,非注冊用戶可以選擇點(diǎn)擊下方的按鈕注冊,然后登錄系統(tǒng)使用相應(yīng)的功能。如圖3所示。
4.2 課程信息發(fā)布界面
通過點(diǎn)擊界面左側(cè)邊欄的課程分類下拉框,會彈出相應(yīng)的課程大類(主干課程,輔修課程,人文素養(yǎng)與愛好),通過點(diǎn)擊不同的課程大類對課程進(jìn)行添加、修改等操作。如圖5所示。
所添加課程與課程大類相關(guān)聯(lián)的部分代碼如下方所示:
var c_type = '${pd.c_type }';
var c_type_name = '';
if( c_type == 1 ){
c_type_name = '主干課程';
}else if( c_type == 2 ){
c_type_name = '輔修課程';
}else if( c_type == 3 ){
c_type_name = '人文素養(yǎng)與愛好';
}else{
……
}
對點(diǎn)擊頁面時所產(chǎn)生的課程大類參數(shù)進(jìn)行判斷,從而確定課程大類ID,進(jìn)而將課程相關(guān)數(shù)據(jù)信息和該課程課程大類ID一同寫入數(shù)據(jù)表中進(jìn)行保存。
4.3 師資管理界面
師資管理功能與其他功能類似,通過點(diǎn)擊對應(yīng)按鈕可對基礎(chǔ)信息進(jìn)行添加和修改等基本操作。如圖6所示。
4.4 學(xué)生案例管理界面
學(xué)生案例主要對往期特色學(xué)員的學(xué)習(xí)感言和學(xué)習(xí)方法等內(nèi)容進(jìn)行管理,當(dāng)后端用戶對信息發(fā)布后,前端用戶方可瀏覽該信息。如圖7所示。
4.6 留言列表
前臺用戶可以在前端頁面直接點(diǎn)擊留言按鈕,彈出框彈出后可將留言信息進(jìn)行錄入并提交。如圖8所示。
同樣的,后端管理員可在“留言列表”中對留言信息進(jìn)行查看。如圖9所示。
當(dāng)數(shù)據(jù)過多時,可以選擇分頁瀏覽數(shù)據(jù).實(shí)現(xiàn)的部分代碼如下:
……
function pagination(currentPage,totalPage){
// 分頁處理
if(totalPage == 1){
$('#pagination').hide();
}else{
$('#pagination').show();
$('#currentPage').html(currentPage);
$('#totalPage').html(totalPage); //獲取總頁數(shù)
}
}
……
//分頁請求數(shù)據(jù)
function paginationRequest(){
params.pageNum = $('#currentPage').html(); //當(dāng)前頁數(shù)據(jù)
getMappingData(displayUrl,params);
……
}
其它諸如課程管理模塊、師資力量發(fā)布等模塊的分頁實(shí)現(xiàn)方式與此類似。
5 系統(tǒng)測試
本測試運(yùn)用數(shù)據(jù)驅(qū)動測試。該測試也被稱為黑盒測試,其主要目的是測試系統(tǒng)的既定功能是否滿足要求。用這一種方法設(shè)計測試用例時完全無須考慮系統(tǒng)的內(nèi)部構(gòu)造,而僅僅是參照系統(tǒng)任務(wù)規(guī)格說明書,模擬用戶實(shí)際使用過程,構(gòu)造數(shù)據(jù)對功能模塊進(jìn)行測試。本次選擇了具有代表性的師資管理模塊進(jìn)行測試,測試了包括空輸入處理、異常輸入驗(yàn)證、頁面跳轉(zhuǎn)、數(shù)據(jù)庫存儲和查詢、表單展示、頁面的彈出框提示等。以下是對師資管理功能模塊的測試用例以及結(jié)果。
通過一系列測試表明,系統(tǒng)符合項目預(yù)期的要求。在項目開發(fā)初期存儲于數(shù)據(jù)庫內(nèi)的測試數(shù)據(jù)而導(dǎo)致的一些問題,在完全清除表中非業(yè)務(wù)產(chǎn)生的數(shù)據(jù)后也得到解決,并且同樣通過測試且驗(yàn)證。
6 結(jié)束語
本文以SSM框架為基本架構(gòu),實(shí)現(xiàn)了教培信息發(fā)布系統(tǒng)的開發(fā),用戶可以通過在瀏覽器URL內(nèi)輸入對應(yīng)的地址進(jìn)而查看信息。后端用戶在驗(yàn)證登錄后可對信息進(jìn)行發(fā)布。系統(tǒng)的開發(fā)過程和業(yè)務(wù)處理方法有一定參考價值。但在開發(fā)過程中因考慮不足而帶來的代碼耦合,還需要在下一階段的工作中解耦和優(yōu)化,這將是下一步任務(wù)的重點(diǎn)。
參考文獻(xiàn):
[1] 張秀坤. MVC設(shè)計模式在Web開發(fā)中的應(yīng)用研究[J]. 長春工程學(xué)院學(xué)報: 自然科學(xué)版, 2005, 6(3): 66-68.
[2] 胡靜. 淺析黑盒測試與白盒測試[J]. 衡水學(xué)院學(xué)報, 2008, 10(1): 30-32.
[3] Nicholas C, Zakas. JavaScript 高級程序設(shè)計[M]. 北京: 人民郵電出版社, 2012.
[4] 王建國. 數(shù)據(jù)庫設(shè)計在網(wǎng)站開發(fā)中的應(yīng)用[J]. 山東農(nóng)業(yè)工程學(xué)院學(xué)報, 2017, 34(4): 158-159.
【通聯(lián)編輯:謝媛媛】