畢業(yè)設計(論文)-springboot教學管理平臺設計_第1頁
畢業(yè)設計(論文)-springboot教學管理平臺設計_第2頁
畢業(yè)設計(論文)-springboot教學管理平臺設計_第3頁
畢業(yè)設計(論文)-springboot教學管理平臺設計_第4頁
畢業(yè)設計(論文)-springboot教學管理平臺設計_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

本科生畢業(yè)論文(設計)題目springboot教學管理平臺學院XXXXX專業(yè)班級XXXXX用戶姓名XXXX指導教師XXXX撰寫日期:2022年5月10日目錄TOC\o"1-3"\h\u摘要 摘要21世紀的今天,隨著社會的不斷發(fā)展與進步,人們對于信息科學化的認識,已由低層次向高層次發(fā)展,由原來的感性認識向理性認識提高,管理工作的重要性已逐漸被人們所認識,科學化的管理,使信息存儲達到準確、快速、完善,并能提高工作管理效率,促進其發(fā)展。論文主要是對教學管理平臺進行了介紹,包括研究的現(xiàn)狀,還有涉及的開發(fā)背景,然后還對系統(tǒng)的設計目標進行了論述,還有系統(tǒng)的需求,以及整個的設計方案,對系統(tǒng)的設計以及實現(xiàn),也都論述的比較細致,最后對教學管理平臺進行了一些具體測試。本文以java為開發(fā)技術,實現(xiàn)了一個教學管理平臺。教學管理平臺的主要使用者分為管理員、學生和輔導員;管理員功能分為:首頁、站點管理(公告欄、輪播圖)用戶管理(管理員、學生用戶、教師用戶)內(nèi)容管理(論壇列表、論壇分類列表、校園資訊、校園資訊分類、隨堂測試)更多管理(作業(yè)發(fā)布、作業(yè)提交、成績信息、留言反饋)等功能。通過這些功能模塊的設計,基本上實現(xiàn)了整個教學管理平臺管理的過程。具體在系統(tǒng)設計上,采用了B/S的結構,同時,也使用java技術在動態(tài)頁面上進行了設計,后臺上采用Mysql數(shù)據(jù)庫,是一個非常優(yōu)秀的教學管理平臺。關鍵詞:springboot技術;MYSQL;教學管理平臺AbstractTodayinthe21stcentury,withthecontinuousdevelopmentandprogressofsociety,people'sscientificunderstandingofinformationhasdevelopedfromlow-leveltohigh-level,andfromtheoriginalperceptualunderstandingtorationalunderstanding.Theimportanceofmanagementhasbeengraduallyrecognizedbypeople.Scientificmanagementcanmakeinformationstorageaccurate,fastandperfect,improveworkmanagementefficiencyandpromoteitsdevelopment.Thispapermainlyintroducestheteachingmanagementplatform,includingtheresearchstatusandthedevelopmentbackgroundinvolved,andthendiscussesthedesignobjectivesofthesystem,therequirementsofthesystemandthewholedesignscheme.Thedesignandimplementationofthesystemarealsodiscussedindetail.Finally,somespecifictestsarecarriedoutontheteachingmanagementplatform.TakingJavaasthedevelopmenttechnology,thispaperrealizesateachingmanagementplatform.Themainusersoftheteachingmanagementplatformaredividedintoadministrators,studentsandcounselors;Administratorfunctionsaredividedinto:homepage,sitemanagement(bulletinboard,rotationchart),usermanagement(administrator,studentuser,teacheruser),contentmanagement(forumlist,forumclassificationlist,campusinformation,campusinformationclassification,inclasstest),moremanagement(assignmentdistribution,assignmentsubmission,scoreinformation,messagefeedback)andotherfunctions.Throughthedesignofthesefunctionalmodules,themanagementprocessofthewholeteachingmanagementplatformisbasicallyrealized.Specifically,inthesystemdesign,itadoptstheB/Sstructure.Atthesametime,italsousesJavatechnologytodesignonthedynamicpage.MySQLdatabaseisusedinthebackground.Itisaveryexcellentteachingmanagementplatform.Keywords:Springboottechnology;MYSQL;Teachingmanagementplatform1緒論1.1研究背景隨著高校的發(fā)展,傳統(tǒng)的教學管理模式已不能滿足現(xiàn)代社會對人才的需求。因此,各院校紛紛開始建設自己的教學管理系統(tǒng)來提高教學質(zhì)量和管理效率。然而在實際應用中發(fā)現(xiàn):現(xiàn)有系統(tǒng)存在著許多缺陷,如開發(fā)時間長,維護困難等。為了解決這些問題,本文提出了一個基于B/S模式的網(wǎng)絡教學系統(tǒng)設計方案,該方案利用Java語言實現(xiàn)了一個具有良好可擴展性和可維護性的教學管理信息系統(tǒng)。本課題首先分析了國內(nèi)外教學管理的現(xiàn)狀,并結合目前教育信息化的發(fā)展趨勢以及學校的具體需要,確定了論文的主要內(nèi)容;其次通過對系統(tǒng)進行功能需求和非功能需求分析,明確了整個系統(tǒng)所需完成的工作,包括教師管理、學生信息管理、作業(yè)發(fā)布、作業(yè)提交、成績信息、留言反饋等功能模塊;再次,根據(jù)各個子模塊之間關系,設計出了相應的數(shù)據(jù)庫結構;然后詳細闡述了系統(tǒng)各個模塊的實現(xiàn)過程,包括登錄模塊、登陸界面模塊、查詢統(tǒng)計模塊;最后,給出了系統(tǒng)測試結果和總結展望。經(jīng)過測試表明,本系統(tǒng)運行穩(wěn)定,操作方便,能夠很好地完成預期目標。同時還可以根據(jù)用戶不同的使用要求,靈活設置參數(shù),以適應各種情況下的需求。另外,由于本系統(tǒng)采用了Java技術框架和MVC設計模式,所以易于擴展,并且能有效避免代碼重用率低的缺點。系統(tǒng)上線后取得了較好效果,得到了廣大師生的肯定。本系統(tǒng)已經(jīng)投入試運行階段。實踐證明,該系統(tǒng)不僅為教師提供了便利,也大大提高了工作效率。系統(tǒng)投入使用以來,極大地方便了教師的日常管理工作,使他們從繁瑣復雜的手工計算中解放出來,極大地提高了工作效率,而且降低了勞動強度,減輕了工作量,從而達到了優(yōu)化資源配置的目的,為學院各項業(yè)務的開展創(chuàng)造了有利的條件。此外,系統(tǒng)對于其它類型的信息管理系統(tǒng)也有一定的借鑒作用,比如校園一卡通系統(tǒng)、教務管理系統(tǒng)等等,因此在實際應用中值得進一步推廣和研究。但是隨著信息技術的發(fā)展和人們對信息需求量的增加,傳統(tǒng)的教學管理方式已不能滿足時代的發(fā)展需要,而建立一套高效實用的教學管理平臺是十分必要的。1.2研究現(xiàn)狀高校的教學管理系統(tǒng)已基本形成了以教務管理為核心、行政管理和后勤服務等相關模塊組成的完整體系。但在實際運行中還存在著一些問題:如各部門之間缺乏有效溝通,信息交流不及時;系統(tǒng)間數(shù)據(jù)共享程度低,不能實現(xiàn)資源共享;部分子系統(tǒng)功能重復,無法滿足不同用戶需求等。這些都嚴重影響到學校教育教學質(zhì)量的提高,也不利于教師資源的合理配置。因此,建立一個高效實用的教學管理平臺具有十分重要的意義。本文結合本校教學管理工作特點,提出了基于B/S結構的教學評估管理系統(tǒng)。該系統(tǒng)采用面向對象技術設計與開發(fā),主要包括三個方面:對系統(tǒng)進行功能測試和性能測試。通過對學生問卷調(diào)查數(shù)據(jù)和專家意見征詢結果的統(tǒng)計分析,確定出各個功能模塊所應達到的指標要求。并根據(jù)指標體系的劃分原則以及具體指標設置,利用模糊綜合評判方法對各項評價因素賦權。同時考慮系統(tǒng)的易用性和可擴展性,將系統(tǒng)分為三層架構模型,分別是客戶端層、服務器端層和數(shù)據(jù)庫服務器層。其中客戶端層用瀏覽器完成登錄操作及各種查詢統(tǒng)計等工作;Web服務器層負責接收來自于客戶端的各類業(yè)務請求;而數(shù)據(jù)庫服務器層中則存儲著所有與教學活動有關的數(shù)據(jù)文件,用于提供給后臺使用。最后,通過實驗測試表明:本論文所設計開發(fā)的基于B/S模式的教學評估管理信息系統(tǒng)能夠較好地完成日常教學管理工作任務。其基本功能可概括如下:(1)能方便快速的查看學院課程安排情況;(2)可以方便快捷的查閱院系教學計劃;(3)可以隨時了解師生學習動態(tài),便于老師掌握授課進度。另外,由于該系統(tǒng)對數(shù)據(jù)庫訪問方式簡單易用,所以在很大程度上簡化了教師工作量,減輕了學生負擔,從而提高了教學管理水平和效率。但是,隨著系統(tǒng)規(guī)模的不斷擴大,系統(tǒng)的穩(wěn)定性和安全性也成為亟待解決的關鍵問題之一。為了保證系統(tǒng)安全穩(wěn)定可靠地運行,我們從多方面采取了安全措施:首先,加強系統(tǒng)管理員的培訓,使他們熟悉系統(tǒng)的組成模塊及其相互關系,增強安全意識。其次,制定詳細的管理制度,確保系統(tǒng)正常運轉;再次,定期組織安全大檢查,及時發(fā)現(xiàn)問題并及時解決??傊?,經(jīng)過一段時間的試運行,證明該教學評估管理信息系統(tǒng)基本實現(xiàn)了預期目標,為教學管理部門提供了高效便捷的管理工具。但在今后的應用中還需要進一步完善,以適應新形勢的發(fā)展需求,更好地為廣大教育工作者服務。綜上所述,本課題的研究對于促進高校信息化建設具有重要意義,它不僅能為學校管理者提供準確有效的決策依據(jù),而且有助于推動高校教學改革,提升教學質(zhì)量,進而全面推進高等教育事業(yè)健康有序地發(fā)展。1.3系統(tǒng)開發(fā)技術的特色(1)教學管理平臺中的web后臺管理中的后端不再使用古老的jsp+javabean+servlet技術,而是使用當前主流的springboot框架,它減少java配置代碼,簡化編程代碼,目前springboot框架也是很多企業(yè)選擇的框架之一。(2)教學管理平臺中的web后臺管理中的前端使用的是JavaScript框架,它配合ajax[8]和jquery[9]可以美化頁面設計。(3)教學管理平臺中數(shù)據(jù)庫用的mysql5.7,它執(zhí)行效率高。1.4論文結構與章節(jié)安排論文將分層次經(jīng)行編排,除去論文摘要致謝文獻參考部分,正文部分還會對網(wǎng)站需求做出分析,以及闡述大體的設計和實現(xiàn)的功能,最后羅列部分調(diào)測記錄,論文主要架構如下:第一章:引言。第一章主要介紹了課題研究的背景,系統(tǒng)開發(fā)的現(xiàn)狀和本文的研究現(xiàn)狀與主要工作。第二章:系統(tǒng)需求分析。第二章主要從系統(tǒng)的用戶、功能等方面進行需求分析。第三章:系統(tǒng)設計。第三章主要對系統(tǒng)框架、系統(tǒng)功能模塊、數(shù)據(jù)庫進行功能設計。第四章:系統(tǒng)實現(xiàn)。第四章主要介紹了系統(tǒng)框架搭建、系統(tǒng)界面的實現(xiàn)。第五章:系統(tǒng)測試。第五章主要對系統(tǒng)的部分界面進行測試并對主要功能進行測試第六章:總結。2教學管理平臺系統(tǒng)分析系統(tǒng)分析是開發(fā)一個項目的先決條件,通過系統(tǒng)分析可以很好的了解系統(tǒng)的主體用戶的基本需求情況,同時這也是項目的開發(fā)的原因。進而對系統(tǒng)開發(fā)進行可行性分析,通常包括技術可行性、經(jīng)濟可行性等,可行性分析同時也是從項目整體角度進行的分析。然后就是對項目的具體需求進行分析,分析的手段一般都是通過用戶的用例圖來實現(xiàn)。下面是詳細的介紹。2.1可行性分析(1)經(jīng)濟可行性:在項目上使用的工具大部分都是是當下流行開源免費的,所以在開發(fā)前期,開發(fā)時用于項目的經(jīng)費將會大大降低,不會讓開發(fā)該軟件在項目啟動期受到經(jīng)費的影響,所以經(jīng)濟上還是可行的。盡量用最少的花費去滿足用戶的需求。省下經(jīng)費用于人工費,以及設備費用。將在無紙化,高效率的道路上越走越遠。所以經(jīng)濟可行性沒有問題。(2)操作可行性:此次項目設計參考了幾個該模式下網(wǎng)站的開發(fā)案例,對他們的操作界面分析,將眾多案例結合在一起,突出以人為本簡化操作,所以具有基本計算機知識的人都會操作本項目。因此操作可行性也沒有問題。(3)技術可行性:技術可行性指的是對于搭建框架的可行性,以及有更優(yōu)秀的技術出現(xiàn)時系統(tǒng)的技術更新?lián)Q代的納新性如何,開發(fā)時間成本費用比如何?,F(xiàn)有的springboot技術能夠迎合所有電子商務系統(tǒng)的搭建。開發(fā)這個教學管理平臺的時候我采用了springboot+MYSQL用以運行整體程序。綜上所述技術可行性也沒有問題。(4)法律可行性:從開發(fā)者角度來看,springboot和MYSQL是網(wǎng)上開源且免費的,在知識產(chǎn)權方面不會產(chǎn)生任何法律糾紛。從用戶使用角度來看,只要不再系統(tǒng)上販賣違禁品,對系統(tǒng)做出條約協(xié)議,杜絕非法支付即可。綜上所述法律可行性也沒有問題。2.2系統(tǒng)流程分析業(yè)務流程是用一些特定的符合和線條來進行演示用戶在使用系統(tǒng)時的過程,在進行系統(tǒng)分析的時候,業(yè)務流程可以幫助開發(fā)人員更好的理解業(yè)務,發(fā)現(xiàn)錯誤,完善系統(tǒng)。2.2.1數(shù)據(jù)增加流程用戶成功登入系統(tǒng)后就能夠實現(xiàn)增加數(shù)據(jù)的操作,增加數(shù)據(jù)的編號是特定的,系統(tǒng)生成,用戶不能隨意填寫,除了編號以外,其他增加信息用戶自己填寫,填寫后的信息經(jīng)過系統(tǒng)驗證,驗證合法通過就顯示增加數(shù)據(jù)成功了,相反的話,就沒有增加成功,圖2-1顯示的就是在增加數(shù)據(jù)時的流程。圖2-1數(shù)據(jù)增加流程圖2.2.2數(shù)據(jù)修改流程數(shù)據(jù)修改時的流程和上面介紹的數(shù)據(jù)增加時的流程差不多,如圖2-2所示。圖2-2數(shù)據(jù)修改流程圖2.2.3數(shù)據(jù)刪除流程如果系統(tǒng)里面存在一些沒有用的數(shù)據(jù)的話,相關的管理人員還可以對這些數(shù)據(jù)進行刪除,圖2-3就是數(shù)據(jù)刪除時的流程圖。圖2-3數(shù)據(jù)刪除流程圖2.3系統(tǒng)功能分析2.3.1功能性分析按照教學管理平臺的角色,我劃分為了學生用戶管理模塊、教師用戶管理模塊和管理員管理模塊這三大部分。學生用戶管理模塊:(1)用戶注冊登錄:用戶注冊為用戶并登錄教學管理平臺;用戶對個人信息的增刪改查,比如個人資料,密碼修改。(2)查看教學管理平臺的首頁信息:教學管理平臺的首頁信息包含了首頁、交流論壇、隨堂測試、公告消息、校園資訊、作業(yè)發(fā)布等。(3)公告:用戶在公告這一菜單下對用戶提交的查看、同時也可以發(fā)布、評論。(4)校園資訊:用戶進行資訊的閱覽,查看管理者發(fā)布的校園資訊信息。教師用戶管理模塊:(1)用戶管理:教師可以對前臺上注冊過的學生信息進行管控,也可以對教師信息進行管控。(2)內(nèi)容管理:管理員可以對教學管理平臺中現(xiàn)有的論壇列表、論壇分類列表、校園資訊、校園資訊分類、隨堂測試進行增刪改查。(3)更多管理:在“更多管理”這一菜單下,可以對教師人員用戶操作的作業(yè)發(fā)布、作業(yè)提交、成績信息、留言反饋等增刪改查。管理員管理模塊:(1)用戶管理:管理員可以對前臺上注冊過的學生用戶信息以及教師用戶進行管控,也可以對管理員信息進行管控。(2)交流論壇管理:管理員在后臺可以對教學管理平臺中顯示的交流論壇進行增刪改查。(3)內(nèi)容管理:管理員可以對教學管理平臺前臺展示的論壇分類、論壇分類列表、校園資訊及校園資訊分類、隨堂測試的分類進行管控。(4)更多管理:在“更多管理”這一菜單下,可以對管理人員用戶操作的作業(yè)發(fā)布、作業(yè)提交、成績信息、留言反饋以及在前臺用戶提交的交流論壇、隨堂測試、公告消息、校園資訊、作業(yè)發(fā)布等進行管控。(5)站點內(nèi)容管理:管理員可以對教學管理平臺中首頁顯示的輪播圖以及系統(tǒng)中的一些公告發(fā)布到系統(tǒng)當中,讓用戶及時的查看到系統(tǒng)信息,進行合理安排。2.3.2非功能性分析教學管理平臺的非功能性需求比如教學管理平臺的安全性怎么樣,可靠性怎么樣,性能怎么樣,可拓展性怎么樣等。具體可以表示在如下3-1表格中:表3-SEQ表3\*ARABIC1教學管理平臺非功能需求表安全性主要指教學管理平臺數(shù)據(jù)庫的安裝,數(shù)據(jù)庫的使用和密碼的設定必須合乎規(guī)范??煽啃钥煽啃允侵附虒W管理平臺能夠安裝用戶的指示進行操作,經(jīng)過測試,可靠性90%以上。性能性能是影響教學管理平臺占據(jù)市場的必要條件,所以性能最好要佳才好。可擴展性比如數(shù)據(jù)庫預留多個屬性,比如接口的使用等確保了系統(tǒng)的非功能性需求。易用性用戶只要跟著教學管理平臺的頁面展示內(nèi)容進行操作,就可以了。可維護性教學管理平臺開發(fā)的可維護性是非常重要的,經(jīng)過測試,可維護性沒有問題2.4系統(tǒng)用例分析通過2.3功能的分析,得出了本教學管理平臺的用例圖:學生用戶角色用例如圖2-3所示。圖2-3教學管理平臺學生用戶角色用例圖web后臺管理上的教師用戶是維護整個教學管理平臺中所有數(shù)據(jù)信息的。教師角色用例如圖2-4所示。圖2-4教學管理平臺教師角色用例圖web后臺管理上的管理員是維護整個教學管理平臺中所有數(shù)據(jù)信息的。管理員角色用例如圖2-5所示。圖2-5教學管理平臺管理員角色用例圖2.5本章小結本章主要通過對教學管理平臺的可行性分析、流程分析、功能需求分析、系統(tǒng)用例分析,確定整個教學管理平臺要實現(xiàn)的功能。同時也為教學管理平臺的代碼實現(xiàn)和測試提供了標準。3教學管理平臺總體設計本章主要討論的內(nèi)容包括教學管理平臺的功能模塊設計、數(shù)據(jù)庫系統(tǒng)設計。3.1系統(tǒng)架構設計本教學管理平臺從架構上分為三層:表現(xiàn)層(UI)、業(yè)務邏輯層(BLL)以及數(shù)據(jù)層(DL)。圖3-1教學管理平臺系統(tǒng)架構設計圖表現(xiàn)層(UI):又稱UI層,主要完成本教學管理平臺的UI交互功能,一個良好的UI可以打打提高用戶的用戶體驗,增強用戶使用本教學管理平臺時的舒適度。UI的界面設計也要適應不同版本的教學管理平臺以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用戶進行交互操作時必須要得到與之相符的交互結果,這就要求表現(xiàn)層要與業(yè)務邏輯層進行良好的對接。業(yè)務邏輯層(BLL):主要完成本教學管理平臺的數(shù)據(jù)處理功能。用戶從表現(xiàn)層傳輸過來的數(shù)據(jù)經(jīng)過業(yè)務邏輯層進行處理交付給數(shù)據(jù)層,系統(tǒng)從數(shù)據(jù)層讀取的數(shù)據(jù)經(jīng)過業(yè)務邏輯層進行處理交付給表現(xiàn)層。數(shù)據(jù)層(DL):由于本教學管理平臺的數(shù)據(jù)是放在服務端的mysql數(shù)據(jù)庫中,因此本屬于服務層的部分可以直接整合在業(yè)務邏輯層中,所以數(shù)據(jù)層中只有數(shù)據(jù)庫,其主要完成本教學管理平臺的數(shù)據(jù)存儲和管理功能。3.2系統(tǒng)功能模塊設計3.2.1整體功能模塊設計在上一章節(jié)中主要對系統(tǒng)的功能性需求和非功能性需求進行分析,并且根據(jù)需求分析了本教學管理平臺中的用例。那么接下來就要開始對本教學管理平臺的架構、主要功能和數(shù)據(jù)庫開始進行設計。教學管理平臺根據(jù)前面章節(jié)的需求分析得出,其總體設計模塊圖如圖3-2所示。圖3-2教學管理平臺功能模塊圖3.2.2用戶模塊設計后臺管理者能夠實現(xiàn)對前臺注冊的用戶增刪改查操作,用戶模塊結構圖如下圖:圖3-3用戶用戶模塊結構圖3.2.3評論管理模塊設計教學管理平臺是一個交流性質(zhì)的公開平臺,用戶用戶和管理人員用戶可以對平臺上信息進行評論,增加用戶之間的互動性。但是同時也為了更好的規(guī)范評論的內(nèi)容,給予管理員刪除不合適的言論的功能,所以需要專門設計一個評論管理模塊,具體的結構圖如下:圖3-4評論模塊結構圖3.3數(shù)據(jù)庫設計數(shù)據(jù)庫設計一般包括需求分析、概念模型設計、數(shù)據(jù)庫表建立三大過程,其中需求分析前面章節(jié)已經(jīng)闡述,概念模型設計有概念模型和邏輯結構設計兩部分。3.3.1數(shù)據(jù)庫概念結構設計下面是整個教學管理平臺中主要的數(shù)據(jù)庫表總E-R實體關系圖。圖3-6教學管理平臺總E-R關系圖下面根據(jù)教學管理平臺的數(shù)據(jù)庫總E-R關系圖可以得出教學管理平臺需要很多E-R圖,在此羅列出來一些主要的數(shù)據(jù)庫E-R模型圖。圖3-7留言反饋E-R關系圖圖3-8教師用戶E-R關系圖圖3-9作業(yè)發(fā)布E-R關系圖圖3-10成績信息E-R關系圖3.3.2數(shù)據(jù)庫邏輯結構設計通過上一小節(jié)中教學管理平臺中總E-R關系圖上得出一共需要創(chuàng)建很多個數(shù)據(jù)表。在此我主要羅列幾個主要的數(shù)據(jù)庫表結構設計。teacher_user表:名稱類型長度不是null主鍵注釋teacher_user_idint11是是教師用戶IDteacher_job_numbervarchar64是否教師工號teacher_namevarchar64否否教師姓名teacher_gendervarchar64否否教師性別teacher_agevarchar64否否教師年齡teacher_certificatevarchar255否否教師證examine_statevarchar16是否審核狀態(tài)recommendint11是否智能推薦user_idint11是否用戶IDcreate_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間student_user表:名稱類型長度不是null主鍵注釋student_user_idint11是是學生用戶IDstudent_numbervarchar64是否學生學號student_namevarchar64否否學生姓名student_gendervarchar64否否學生性別student_agevarchar64否否學生年齡class_namevarchar64否否班級名稱examine_statevarchar16是否審核狀態(tài)recommendint11是否智能推薦user_idint11是否用戶IDcreate_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間message_feedback表:名稱類型長度不是null主鍵注釋message_feedback_idint11是是留言反饋IDstudent_numberint11否否學生學號student_namevarchar64否否學生姓名feedback_informationtext0否否反饋信息recommendint11是否智能推薦create_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間job_submission表:名稱類型長度不是null主鍵注釋job_submission_idint11是是作業(yè)提交IDrelease_teacherint11否否發(fā)布教師job_namevarchar64否否作業(yè)名稱release_timedatetime0否否發(fā)布時間required_timedatetime0否否要求時間student_userint11否否學生用戶submit_jobvarchar255否否提交作業(yè)submission_timedatetime0否否提交時間job_detailstext0否否作業(yè)詳情recommendint11是否智能推薦create_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間job_release表名稱類型長度不是null主鍵注釋job_release_idint11是是作業(yè)發(fā)布IDrelease_teacherint11否否發(fā)布教師job_namevarchar64否否作業(yè)名稱job_filevarchar255否否作業(yè)文件release_timedatetime0否否發(fā)布時間required_timedatetime0否否要求時間job_detailstext0否否作業(yè)詳情recommendint11是否智能推薦create_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間achievement_information表名稱類型長度不是null主鍵注釋achievement_information_idint11是是成績信息IDtest_paper_namevarchar64否否試卷名稱examination_timedatetime0否否考試時間end_timedatetime0否否結束時間total_score_of_test_paperint11否否試卷總分student_numberint11否否學生學號student_namevarchar64否否學生姓名student_scoreint11否否學生分數(shù)recommendint11是否智能推薦create_timedatetime0是否創(chuàng)建時間update_timetimestamp0是否更新時間user_answer表:名稱類型長度不是null主鍵注釋user_answer_idmediumint8是是user_idmediumint8是否用戶IDexam_idmediumint8是否考試idscoredouble8否否分數(shù)answersvarchar1000否否答案score_detailvarchar1000否否評分詳情objective_scoredouble8否否客觀題得分subjective_scoredouble8否否主觀題得分score_statetinyint2否否評分狀態(tài)nicknamevarchar255否否提交人create_timetimestamp0是否創(chuàng)建時間:update_timetimestamp0是否更新時間:3.4本章小結整個教學管理平臺的需求分析主要對系統(tǒng)總體架構以及功能模塊的設計,通過建立E-R模型和數(shù)據(jù)庫邏輯系統(tǒng)設計完成了數(shù)據(jù)庫系統(tǒng)設計。4教學管理平臺詳細設計與實現(xiàn)教學管理平臺的詳細設計與實現(xiàn)主要是根據(jù)前面的教學管理平臺的需求分析和教學管理平臺的總體設計來設計頁面并實現(xiàn)業(yè)務邏輯。主要從教學管理平臺界面實現(xiàn)、業(yè)務邏輯實現(xiàn)這兩部分進行介紹。4.1用戶功能模塊4.1.1前臺首頁界面當進入教學管理平臺的時候,首先映入眼簾的是系統(tǒng)的導航欄,下面是輪播圖以及系統(tǒng)內(nèi)容,其主界面展示如下圖4-1所示。圖4-1前臺首頁界面圖4.1.2學生登錄界面教學管理平臺中的前臺上注冊后的學生是可以通過自己的賬戶名和密碼進行登錄的,當用戶輸入完整的自己的賬戶名和密碼信息并點擊“登錄”按鈕后,將會首先驗證輸入的有沒有空數(shù)據(jù),再次驗證輸入的賬戶名+密碼和數(shù)據(jù)庫中當前保存的用戶信息是否一致,只有在一致后將會登錄成功并自動跳轉到教學管理平臺的首頁中;否則將會提示相應錯誤信息,學生登錄界面如下圖4-2所示。圖4-2學生登錄界面圖登錄關鍵代碼如下所示。/***登錄*@paramdata*@paramhttpServletRequest*@return*/@PostMapping("login")publicMap<String,Object>login(@RequestBodyMap<String,String>data,HttpServletRequesthttpServletRequest){("[執(zhí)行登錄接口]");Stringusername=data.get("username");Stringemail=data.get("email");Stringphone=data.get("phone");Stringpassword=data.get("password");ListresultList=null;Map<String,String>map=newHashMap<>();if(username!=null&&"".equals(username)==false){map.put("username",username);resultList=service.select(map,newHashMap<>()).getResultList();}elseif(email!=null&&"".equals(email)==false){map.put("email",email);resultList=service.select(map,newHashMap<>()).getResultList();}elseif(phone!=null&&"".equals(phone)==false){map.put("phone",phone);resultList=service.select(map,newHashMap<>()).getResultList();}else{returnerror(30000,"賬號或密碼不能為空");}if(resultList==null||password==null){returnerror(30000,"賬號或密碼不能為空");}//判斷是否有這個用戶if(resultList.size()<=0){returnerror(30000,"用戶不存在");}UserbyUsername=(User)resultList.get(0);Map<String,String>groupMap=newHashMap<>();groupMap.put("name",byUsername.getUserGroup());ListgroupList=userGroupService.select(groupMap,newHashMap<>()).getResultList();if(groupList.size()<1){returnerror(30000,"用戶組不存在");}UserGroupuserGroup=(UserGroup)groupList.get(0);//查詢用戶審核狀態(tài)if(!StringUtils.isEmpty(userGroup.getSourceTable())){Stringsql="selectexamine_statefrom"+userGroup.getSourceTable()+"WHEREuser_id="+byUsername.getUserId();Stringres=String.valueOf(service.runCountSql(sql).getSingleResult());if(res==null){returnerror(30000,"用戶不存在");}if(!res.equals("已通過")){returnerror(30000,"該用戶審核未通過");}}//查詢用戶狀態(tài)if(byUsername.getState()!=1){returnerror(30000,"用戶非可用狀態(tài),不能登錄");}Stringmd5password=service.encryption(password);if(byUsername.getPassword().equals(md5password)){//存儲Token到數(shù)據(jù)庫AccessTokenaccessToken=newAccessToken();accessToken.setToken(UUID.randomUUID().toString().replaceAll("-",""));accessToken.setUser_id(byUsername.getUserId());tokenService.save(accessToken);//返回用戶信息JSONObjectuser=JSONObject.parseObject(JSONObject.toJSONString(byUsername));user.put("token",accessToken.getToken());JSONObjectret=newJSONObject();ret.put("obj",user);returnsuccess(ret);}else{returnerror(30000,"賬號或密碼不正確");}}4.1.3學生注冊界面不是教學管理平臺中正式學生的是可以在線進行注冊的,如果你沒有本教學管理平臺的賬號的話,添加“注冊”,當填寫上自己的賬號+密碼+確認密碼+昵稱+郵箱+手機號等后再點擊“注冊”按鈕后將會先驗證輸入的有沒有空數(shù)據(jù),再次驗證密碼和確認密碼是否是一樣的,最后驗證輸入的賬戶名和數(shù)據(jù)庫表中已經(jīng)注冊的賬戶名是否重復,只有都驗證沒問題后即可學生注冊成功。其用學生注冊界面展示如下圖4-3所示。圖4-2學生注冊界面圖注冊關鍵代碼如下所示。/***注冊*@paramuser*@return*/@PostMapping("register")publicMap<String,Object>signUp(@RequestBodyUseruser){//查詢用戶Map<String,String>query=newHashMap<>();query.put("username",user.getUsername());Listlist=service.select(query,newHashMap<>()).getResultList();if(list.size()>0){returnerror(30000,"用戶已存在");}user.setUserId(null);user.setPassword(service.encryption(user.getPassword()));service.save(user);returnsuccess(1);}/***用戶ID:[0,8388607]用戶獲取其他與用戶相關的數(shù)據(jù)*/@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="user_id")privateIntegeruserId;/***賬戶狀態(tài):[0,10](1可用|2異常|3已凍結|4已注銷)*/@Basic@Column(name="state")privateIntegerstate;/***所在用戶組:[0,32767]決定用戶身份和權限*/@Basic@Column(name="user_group")privateStringuserGroup;/***上次登錄時間:*/@Basic@Column(name="login_time")privateTimestamploginTime;/***手機號碼:[0,11]用戶的手機號碼,用于找回密碼時或登錄時*/@Basic@Column(name="phone")privateStringphone;/***手機認證:[0,1](0未認證|1審核中|2已認證)*/@Basic@Column(name="phone_state")privateIntegerphoneState;/***用戶名:[0,16]用戶登錄時所用的賬戶名稱*/@Basic@Column(name="username")privateStringusername;/***昵稱:[0,16]*/@Basic@Column(name="nickname")privateStringnickname;/***密碼:[0,32]用戶登錄所需的密碼,由6-16位數(shù)字或英文組成*/@Basic@Column(name="password")privateStringpassword;/***郵箱:[0,64]用戶的郵箱,用于找回密碼時或登錄時*/@Basic@Column(name="email")privateStringemail;/***郵箱認證:[0,1](0未認證|1審核中|2已認證)*/@Basic@Column(name="email_state")privateIntegeremailState;/***頭像地址:[0,255]*/@Basic@Column(name="avatar")privateStringavatar;/***創(chuàng)建時間:*/@Basic@Column(name="create_time")@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss")privateTimestampcreateTime;@Basic@TransientprivateStringcode;}4.1.4交流論壇界面當訪客點擊教學管理平臺中導航欄上的“交流論壇”后將會進入到該“交流論壇”列表的界面,然后選擇想要看的交流論壇,點擊進入到詳細界面,在詳細界面可以發(fā)布內(nèi)容+收藏+評論等操作,交流論壇界面如下圖4-3所示。圖4-3交流論壇界面圖4.1.5公告欄界面當點擊導航欄上的“公告欄”的時候,就會進入對應的界面查看公告信息,公告欄界面如下圖4-4所示。圖4-4公告欄界面圖4.1.6隨堂測試詳情界面當訪客點擊了任意隨堂測試后將會進入隨堂測試信息的詳情界面,可以了解到該隨堂測試的測試名稱、答題時長、總分等,同時可以對該隨堂測試信息進行評分+查看分數(shù)隨堂測試詳情展示頁面如圖4-5所示。圖4-5隨堂測試詳情界面圖4.3管理員功能模塊4.3.1用戶管理界面教學管理平臺中的管理人員是可以對前臺注冊的學生用戶、教師用戶進行管理的,也可以對管理員進行管控。界面如下圖4-6所示。圖4-6用戶管理界面圖用戶管理關鍵代碼如下所示。publicStringencryption(StringplainText){Stringre_md5=newString();try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(plainText.getBytes());byteb[]=md.digest();inti;StringBufferbuf=newStringBuffer("");for(intoffset=0;offset<b.length;offset++){i=b[offset];if(i<0)i+=256;if(i<16)buf.append("0");buf.append(Integer.toHexString(i));}re_md5=buf.toString();}catch(Exceptione){e.printStackTrace();}returnre_md5;}4.3.2內(nèi)容管理界面教學管理平臺中的管理人員在“內(nèi)容管理”這一菜單中是可以對教學管理平臺內(nèi)的論壇列表、論壇分類列表、校園資訊、校園資訊分類、隨堂測試等進行維護和管理的,界面如下圖4-7所示。圖4-7內(nèi)容管理界面圖4.3.3站點管理界面教學管理平臺中的管理人員在“站點管理”這一菜單中是可以對前臺顯示的輪播圖以及公告欄進行管控。界面如下圖4-8所示。圖4-8站點管理界面圖站點管理關鍵代碼如下所示。@PostMapping("/add")@TransactionalpublicMap<String,Object>add(HttpServletRequestrequest)throwsIOException{service.insert(service.readBody(request.getReader()));returnsuccess(1);}@TransactionalpublicMap<String,Object>addMap(Map<String,Object>map){service.insert(map);returnsuccess(1);}publicMap<String,Object>readBody(BufferedReaderreader){BufferedReaderbr=null;StringBuildersb=newStringBuilder("");try{br=reader;Stringstr;while((str=br.readLine())!=null){sb.append(str);}br.close();Stringjson=sb.toString();returnJSONObject.parseObject(json,Map.class);}catch(IOExceptione){e.printStackTrace();}finally{if(null!=br){try{br.close();}catch(IOExceptione){e.printStackTrace();}}}returnnull;}publicvoidinsert(Map<String,Object>body){StringBuffersql=newStringBuffer("INSERTINTO");sql.append("`").append(table).append("`").append("(");for(Map.Entry<String,Object>entry:body.entrySet()){sql.append("`"+humpToLine(entry.getKey())+"`").append(",");}sql.deleteCharAt(sql.length()-1);sql.append(")VALUES(");for(Map.Entry<String,Object>entry:body.entrySet()){Objectvalue=entry.getValue();if(valueinstanceofString){sql.append("'").append(entry.getValue()).append("'").append(",");}else{sql.append(entry.getValue()).append(",");}}sql.deleteCharAt(sql.length()-1);sql.append(")");("[{}]-插入操作:{}",table,sql);Queryquery=runCountSql(sql.toString());query.executeUpdate();}4.3.4更多管理界面教學管理平臺中的管理人員在“更多管理”這一菜單下是可以對教學管理平臺內(nèi)的作業(yè)發(fā)布、作業(yè)提交、創(chuàng)建信息、留言反饋進行管控的,其管理界面如下圖4-9所示。圖4-9更多管理界面圖更多管理關鍵代碼如下所示。@RequestMapping(value="/del")@TransactionalpublicMap<String,Object>del(HttpServletRequestrequest){service.delete(service.readQuery(request),service.readConfig(request));returnsuccess(1);}@Transactionalpublicvoiddelete(Map<String,String>query,Map<String,String>config){StringBuffersql=newStringBuffer("DELETEFROM").append("`").append(table).append("`").append("");sql.append(toWhereSql(query,"0".equals(config.get(FindConfig.GROUP_BY))));("[{}]-刪除操作:{}",table,sql);Queryquery1=runCountSql(sql.toString());query1.executeUpdate();}5系統(tǒng)測試5.1系統(tǒng)測試的目的 系統(tǒng)開發(fā)到了最后一個階段那就是系統(tǒng)測試,系統(tǒng)測試對軟件的開發(fā)其實是非常有必要的。因為沒什么系統(tǒng)一經(jīng)開發(fā)出來就可能會盡善盡美,再厲害的系統(tǒng)開發(fā)工程師也會在系統(tǒng)開發(fā)的時候出現(xiàn)紕漏,系統(tǒng)測試能夠較好的改正一些bug,為后期系統(tǒng)的維護性提供很好的支持。通過系統(tǒng)測試,開發(fā)人員也可以建立自己對系統(tǒng)的信心,為后期的系統(tǒng)版本的跟新提供支持。5.2系統(tǒng)測試用例系統(tǒng)測試包括:用戶登錄功能測試、教學展示功能測試、教學添加、教學搜索、密碼修改功能測試,如表5-1、5-2、5-3、5-4、5-5所示:用戶登錄功能測試:表5-1用戶登錄功能測試表用例名稱用戶登錄系統(tǒng)目的測試用戶通過正確的用戶名和密碼可否登錄功能前提未登錄的情況下測試流程1)進入登錄頁面2)輸入正確的用戶名和密碼預期結果用戶名和密碼正確的時候,跳轉到登錄成功界面,反之則顯示錯誤信息,提示重新輸入實際結果實際結果與預期結果一致教學查看功能測試:表5-2教學查看功能測試表用例名稱教學查看目的測試教學查看功能前提用戶登錄測試流程點擊教學列表預期結果可以查看到所有教學信息實際結果實際結果與預期結果一致管理員添加教學界面測試:表5-3管理員添加教學界面測試表用例名稱教學發(fā)布測試用例目的測試教學發(fā)布功能前提用戶正常登錄情況下測試流程1)點擊教學信息管理就,然后點擊添加后并填寫信息。2)點擊進行提交。預期結果提交以后,頁面首頁會顯示新的教學信息實際結果實際結果與預期結果一致教學搜索功能測試:表5-4教學搜索功能測試表用例名稱教學搜索測試目的測試教學搜索功能前提無測試流程1)在搜索框填入搜索關鍵字。2)點擊搜索按鈕。預期結果頁面顯示包含有搜索關鍵字的教學實際結果實際結果與預期結果一致密碼修改功能測試:表5-5密碼修改功能測試表用例名稱密碼修改測試用例目的測試管理員密碼修改功能前提管理員用戶正常登錄情況下測試流程1)管理員密碼修改并完成填寫。2)點擊進行提交。預期結果使用新的密碼可以登錄實際結果實際結果與預期結果一致5.3系統(tǒng)測試結果通過編寫教學管理平臺的測試用例,已經(jīng)檢測完畢用戶登錄模塊、教學查看模塊、教學添加模塊、教學搜索模塊、密碼修改功能測試,通過這5大

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論