費孝宏 王琪







摘要:針對網絡信息量巨大使得高校師生信息搜索及交流不理想的現象設計了校園論壇管理系統。通過SSM(Spring、SpringMVC和Mybatis)框架和Jquery框架分別構建了后端及前端框架,基于控制層,業務層及數據傳輸層三層模型,詳細設計后臺與前端交互、邏輯處理、數據傳輸,實現了論壇的文章管理、問答管理、評論管理、公告管理等功能。最后,通過多個測試場景測試,表明了該系統的有效性。
關鍵詞:SSM框架;校園論壇;Jquery;AJAX;邏輯處理
中圖分類號:TP311.52 ? ? ?文獻標識碼:A
文章編號:1009-3044(2021)31-0076-03
Design and Development for Campus Forum Management System
FEI Xiao-hong, WANG Qi
(School of Information Engineering, Nanyang Institute of Technology, Nanyang 473000, China)
Abstract: This system is designed for the huge amount of network information and the demand for information exchange between teachers and students in colleges and universities. The system builds back-end and front-end frameworks through SSM (Spring, SpringMVC and Mybatis) framework and Jquery framework respectively. The back-end and front-end interaction, logic processing, and data transmission are designed according to the three-tier model of control layer, business layer and data transmission layer, It has realized the functions of forum article management, question and answer management, comment management, announcement management and so on. Finally, a number of test scenarios are designed for testing, showing that the system is effective.
Key words: SSM framework; campus forum; Jquery; AJAX; logic processing
1 背景
隨著互聯網技術的發展,國內BBS論壇也越來越受人們的喜愛,新浪、搜狐、網易等大型論壇已成為信息交流的標志,越來越多的人習慣于通過BBS論壇獲取信息,交流經驗,分享生活[1-2]。然而,隨著網絡信息爆炸,高校師生精準搜索到有用信息并完成交流,就顯得尤為困難,同時由于各論壇及用戶使用技術不同,信息延時,長時間得不到回復,使得論壇交流不佳。對于高校而言,校園論壇不僅代表著學校的信息發展,同時也是師生有效溝通交流獲取信息的途徑,因此本文針對高校開發一套小平臺,使高校用戶能夠更快速地獲取有用信息,且有利于高校用戶維護。
2 需求分析
本論壇系統的主要目的是給學生及教師提供一個交流平臺,便于師生獲取信息,交流校園生活、學習及技術經驗心得等。因此,通過分析CSDN論壇及多個高校官網特點,主要設計了五個功能塊,包括系統管理、文章管理、評論區管理、問答管理、公告管理。系統管理主要功能是權限和用戶管理,系統初期設置管理員及普通用戶,不同用戶分配權限不同。文章主要包括文字和圖片輸入,文章修改,保存,發布,發布權限,刪除權限。評論管理中用戶可以對文章進行評論,發布,刪除。問答管理是對文章管理的補充,一般的論壇系統評論和問答通常混合在一起造成搜索不便。因此,本文單獨設計問答管理模塊,用戶的疑問發布者的回答放在問答版塊中,可編輯修改保存發布,用戶角色不同權限不同。公告管理,是根據學生上網習慣,如大部分學生更愿意在論壇沖浪而忽視查看學校官網,為了學生更有效地獲取校園通知而單獨設計的版塊,是對學校官網的補充。管理員發布公告后,用戶公告欄可同步更新,根據用戶權限執行不同功能包括編輯、修改、保存、置頂、文件上傳、刪除。
3 系統框架設計
系統框架的搭建包括ID生成器、異常工具類、文件上傳、權限控制共4個部分。
3.1 id生成工具類
利用IdWorker類生成64位不重復的id;截取其中32位并使得所有業務ID唯一,如圖1。
3.2 異常類工具類
本項目使用自定義異常,設計時必須繼承運行期異常,因為運行期異常中的類和對象才可以被throws和throw操作,在自定義的類中對可能出現的異常情況進行自定義描述,寫入異常識別碼、異常信息屬性,在異常情況出現位置拋出識別碼,就會出現具體異常的信息。自定義類中描述常見的異常情況,如非空、不等、非法符號等情況進行封裝,使得代碼更加簡化,更具有可擴展性。完善自定義類后,可具體描述異常情況處理,以便于當運行出現了定義的異常情況時可拋出正確合理的異常信息。
3.3 文件上傳
首先獲得文件名及文件后綴,加載配置文件路徑,利用FastDFS架構進行文件上傳,可滿足將多個文件的業務id及路徑放在一個空數據表中,且項目刪除不影響文件數據[3];利用Tracker server 進行文件的追蹤和調度;利用Storage Server實現上傳,流程如圖2。
3.4 權限控制
本系統的權限認證做法是在用戶登錄時將用戶信息放入session中,前端調用接口時將session傳入后端,后端對session中的用戶信息進行解析判斷,判斷用戶是否擁有相關權限。
4 系統詳細設計
4.1 數據庫設計
設計數據表時,存在單表操作,兩個及以上多表的關聯操作。多表關聯操作采用表的主鍵id,其中,若為一對一、一對多的關系,可用關聯字段關聯,如id;若表之間是多對多關系,則需要為多對多關系建立一個中間表作為緩沖,存儲關系映射,節約數據庫空間[4]。本系統設計了14類數據表,包括:用戶表、角色表、權限表、用戶角色中間表、角色權限表、學院表、專業表、附件表、文章表、評論表、問題表、回答表、公告表、公告接收人表,以用戶表,文章表為例,如表1,表2。
4.2 系統功能模塊實現
1)系統執行流程
系統執行的過程分為前端,后端,前端接收數據,后端處理數據[5],用戶通過前端控制器發送請求,前端控制器根據用戶請求通過處理器映射器獲得執行標識,通過處理器適配器發送給處理器進行對應的數據處理,最后將處理數據經適配器返回到前端控制,前端將得到的數據發送到視圖解析器進行數據到頁面的映射,結果返回到前端控制器為用戶進行可視化展示,如圖3所示。
2)用戶登錄和管理
用戶登錄提供輸入用戶名、密碼、密碼記住、信息判斷、注冊等功能。用戶管理分為管理員和用戶。管理員鑒權通過處理系統所有用戶信息;用戶鑒權通過處理個人信息。
3)公告管理
公告管理包括查詢、新增、編輯、刪除4部分。查詢通關關鍵字查詢公告標題;用戶通過權限驗證新增公告,編輯和刪除是提供給管理員的接口,其中新增,編輯刪除時分兩種情況,若為公有公告需在公告主數據表中插入新增公告業務id,若為私有公告則需同時在主表和選定的接收人公告表中新增id。
4)文章管理
文章管理可分為查詢,編輯,新增,刪除4部分。查詢進行關鍵詞搜索,采用模糊匹配方法。用戶在權限允許范圍內對文章有編輯和刪除的操作。設計流程如圖4,效果圖如圖5。
5)問答管理
問答管理分為問題管理和回答管理,問題管理默認可查看問題數據表中所有問題列表,通過關鍵詞模糊查詢數據表中作者公告題目返回查詢結果。用戶可創建問題,通過權限驗證后可編輯和刪除問題。回答列表在問題列表之下,展示此問題所有答案同時輸入用戶新增答案。僅創建者和管理員可修改和刪除回答。流程圖如圖6,效果圖如圖7。
5 功能模塊測試
設計了基礎模塊測試和權限測試兩部分,每部分進行3組測試,共6組測試,測試結果均達到了預期。
5.1 基礎模塊測試
1)測試內容:輸入正確的賬號密碼進行登錄。實驗結果:登錄成功,正確跳轉系統首頁,首頁能夠正常展示。
2)測試內容:從導航欄進入文章管理、問答管理、公告管理,輸入關鍵詞點擊查詢列表信息。實驗結果:根據輸入的關鍵詞,正確顯示匹配關鍵字的信息列表,點擊標題,能夠進入詳情頁。
3)測試內容:進入各模塊首頁,點擊新增按鈕,輸入相關內容,在富文本編輯器中插入圖片,插入代碼,改變字體樣式,點擊提交。實驗結果:新增一條信息,點擊標題,進入詳情頁,內容和自己輸入的內容一致。
5.2 權限測試
1)測試內容:正常登錄系統,將系統的路徑復制一份,使用另一個瀏覽器打開此路徑。實驗結果:彈框報錯,您還沒有登錄賬號,請登錄后重新訪問。
2)測試內容:使用普通用戶的賬號密碼進行登錄,點擊刪除按鈕,點擊用戶管理導航欄。實驗結果:彈框報錯,您沒有該權限。
3)測試內容:使用管理員賬號登錄系統,點擊刪除按鈕,從用戶管理頁給用戶賦予角色。實驗結果:能夠正常的刪除,給用戶賦予角色后,使用該賬號登錄系統就擁有的相關權限。
6 結束語
系統采用的SSM框架設計了校園論壇系統,搭建了包含id生成器、自定義異常類以及異常方法、數據傳輸類以及權限控制的系統框架。在框架基礎上實現功能模塊包括文章管理、評論區管理、問答管理、用戶管理。系統首先搭建系統框架,然后添加功能模塊,因此,可擴展性很強。同時,經多組測試,本論壇管理系統可以實現文章,用戶,評論等功能,操作簡單,有利于校園用戶進行信息交流。
參考文獻:
[1] 張冬,田艷.校園兼職信息管理系統分析與設計[J].軟件工程,2019,22(7):37-39.
[2] 何博文,鄭劍.BBS論壇系統設計與實現[J].電腦知識與技術,2018,14(18):42-44.
[3] 朱帥.基于FastDFS的云存儲文件系統性能優化設計與實現[D].南京:東南大學,2017.
[4] 于簡溪.基于Java的BBS論壇系統的設計與實現[J].信息通信,2016,29(2):117-119.
[5] 曹臣承.網絡論壇管理系統的設計與實現[J].湖南城市學院學報(自然科學版),2016,25(2):123-124.
【通聯編輯:謝媛媛】
收稿日期:2021-06-20
基金項目:河南省高等學校重點科研項目(項目編號:19B520017)
作者簡介:費孝宏(1995—),男,江蘇淮安人,學士,研究方向為Java開發;王琪(1987—),女,通信作者,講師,碩士,研究方向為圖像處理、計算機視覺。