【《基于SpringBoot框架的師生交流論壇系統(tǒng)設(shè)計(jì)》14000字(論文)】_第1頁
【《基于SpringBoot框架的師生交流論壇系統(tǒng)設(shè)計(jì)》14000字(論文)】_第2頁
【《基于SpringBoot框架的師生交流論壇系統(tǒng)設(shè)計(jì)》14000字(論文)】_第3頁
【《基于SpringBoot框架的師生交流論壇系統(tǒng)設(shè)計(jì)》14000字(論文)】_第4頁
【《基于SpringBoot框架的師生交流論壇系統(tǒng)設(shè)計(jì)》14000字(論文)】_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第三章需求分析3.1系統(tǒng)總體需求分析身處現(xiàn)在這個信息化時代,傳統(tǒng)的人工記錄信息已經(jīng)漸漸跟不上現(xiàn)時代的生活節(jié)奏,不僅耗時長、不易攜帶、安全系數(shù)也低,當(dāng)今時代連金錢都已經(jīng)進(jìn)入信息化,不難發(fā)現(xiàn),人們外出逛街購物時很少會使用現(xiàn)金了,支付方式早已被刷卡或掃碼等方式替代,無論是購物還是旅行,只要帶上卡和手機(jī),就可以放心的出門了,信息化不僅只是方便了人們的日常生活,同樣還避免了錢財(cái)丟失或被竊取等問題,提高了人們對錢財(cái)掌控的安全系數(shù),減少了不必要的損失。信息化帶來的改變不僅于此,不僅僅是錢財(cái),還有更多的數(shù)據(jù)可以被信息化,同時給大眾帶來更多的便利。本課題所設(shè)計(jì)的校園論壇系統(tǒng),能夠方便學(xué)生進(jìn)行學(xué)術(shù)的交流,技術(shù)的交流,方便擴(kuò)展學(xué)生們的交流渠道,在系統(tǒng)開發(fā)前,將需求分析做到全面思考,確定系統(tǒng)所需要使用的開發(fā)軟件、開發(fā)流程,所需要使用的框架,實(shí)現(xiàn)的功能,以及需要哪種數(shù)據(jù)庫來對數(shù)據(jù)進(jìn)行存儲,系統(tǒng)所使用的軟件架構(gòu)等等,只有將這些考慮周全,對于所開發(fā)的系統(tǒng)實(shí)現(xiàn)的效果功能就會大大的加強(qiáng),使用的壽命也會延長。在校園論壇的建設(shè)中,設(shè)計(jì)一個具有特色的、符合學(xué)校自身特點(diǎn)的,并且具有強(qiáng)大功能的個性化校園論壇系統(tǒng),使得論壇能夠?yàn)楦咝5膸熒峁┮粋€交流的平臺。同時論壇的創(chuàng)建對于加強(qiáng)校園師生之間的感情溝通也有巨大的好處,在學(xué)生遇到心理問題的時候也能夠在論壇上傾訴,通過與同學(xué)或者老師的溝通交流,可以對其進(jìn)行心理疏導(dǎo)。綜上所述,本系統(tǒng)應(yīng)具有以下主要功能:相應(yīng)的登錄、注冊功能,包括登錄攔截器的功能,注銷功能。圖片的上傳功能。用戶可以上傳圖片用作發(fā)布文章的封面。分頁功能。用戶可以看到三大模塊的分頁,使得頁面更加整潔。發(fā)表詳情功能。用戶可以看到以柱狀圖的形式顯示出每年自己發(fā)布的文章、筆記和問答的總條數(shù),以折線圖顯示自己發(fā)布的前十名文章。系統(tǒng)環(huán)境綠色穩(wěn)定,操作方便簡單,界面美觀大方。3.2系統(tǒng)功能需求分析基于本論文的對系統(tǒng)的總體需求分析,可以得出校園論壇系統(tǒng)應(yīng)具有以下三個功能模塊:管理員模塊、用戶模塊、訪客模塊,系統(tǒng)功能模塊圖如圖3-1所示。圖3-1系統(tǒng)功能模塊圖管理員功能模塊系統(tǒng)管理員具有的操作功能為對用戶進(jìn)行禁用,刪除,分配用戶權(quán)限。用戶功能模塊用戶可以對論壇中的大部分功能進(jìn)行操作,其中包括登錄注冊、注銷功能,對三大模塊的瀏覽和查詢功能,對文章模塊和筆記模塊的留言功能,對答疑模塊的問答功能,管理自己發(fā)表的文章、筆記、問答,對他們進(jìn)行正常的增刪改查功能,修改自己的基礎(chǔ)信息、密碼功能,以圖表查看自己發(fā)表情況的功能等。訪客功能模塊訪客可以對進(jìn)入用戶注冊登錄模塊,把用戶的信息添加到數(shù)據(jù)庫當(dāng)中,當(dāng)再次登錄的時候可以使用賬號密碼進(jìn)行登錄,成為用戶。也可以對論壇中的三大模塊進(jìn)行查看,瀏覽論壇中的帖子,可以對帖子進(jìn)行模糊搜索功能,這些功能是論壇中的主要功能,可以獲取到論壇中的信息來滿足自己的需求。3.3系統(tǒng)性能需求分析系統(tǒng)安全性本系統(tǒng)應(yīng)當(dāng)具有較高的安全性,源碼中不包含任何破壞計(jì)算機(jī)功能或數(shù)據(jù)的代碼,在運(yùn)行編譯時應(yīng)使用代碼加密、混淆等技術(shù)預(yù)防被破解,同時對于惡意的網(wǎng)絡(luò)攻擊應(yīng)具有一定的抵御能力,在出現(xiàn)異常的情況下,保證操作能夠回滾REF_Ref6717\r\h[3]。系統(tǒng)易用性本系統(tǒng)界面大方美觀,操作簡單,易于上手,不增加用戶的學(xué)習(xí)成本。系統(tǒng)容錯性本系統(tǒng)對于數(shù)據(jù)的輸入異常、網(wǎng)絡(luò)異常、系統(tǒng)錯誤以及刪除操作等都有較為友好的提示信息或界面,擁有不錯的容錯性能。3.4系統(tǒng)用例分析在確定校園論壇系統(tǒng)用戶角色的基礎(chǔ)上,通過用例集合進(jìn)行分析梳理系統(tǒng)與用戶、用戶與用戶和系統(tǒng)與系統(tǒng)之間的互相聯(lián)系,從而進(jìn)一步明確系統(tǒng)功能。下面將從管理員、用戶以及訪客三種不同的用戶角色出發(fā),整體分析本系統(tǒng)的功能模塊,如圖3-2:圖3-2系統(tǒng)用例圖(1)管理員系統(tǒng)管理員具有管理用戶信息功能和對三大模塊的管理信息功能,對于用戶信息的管理只有查詢、刪除和禁用、分配權(quán)限功能,用戶的基礎(chǔ)信息屬于用戶私有信息,不具備更改用戶的信息功能。(2)用戶用戶是使用本系統(tǒng)的主要人員,主要可以對三大模塊進(jìn)行大部分功能,包括瀏覽查詢功能,對文章模塊和筆記模塊進(jìn)行留言功能,對答疑模塊進(jìn)行問答功能,對自己發(fā)表的情況進(jìn)行管理功能等。(3)訪客訪客也是使用本系統(tǒng)的主要人員,但僅僅具有瀏覽三大模塊的基礎(chǔ)功能,和模糊查詢的基礎(chǔ)功能,僅能夠獲取自己需要的信息,不能夠發(fā)表任何信息。第四章系統(tǒng)架構(gòu)設(shè)計(jì)4.1系統(tǒng)功能模塊設(shè)計(jì)根據(jù)前文所研究的學(xué)生作業(yè)管理系統(tǒng)功能需求,校園論壇系統(tǒng)的總體功能結(jié)構(gòu)的設(shè)計(jì)如圖4-1所示。圖4-1總體功能設(shè)計(jì)圖通過對校園論壇系統(tǒng)各項(xiàng)業(yè)務(wù)進(jìn)行詳細(xì)分析得出以上圖(圖4-1)中的主要功能,主要分為前端模塊和后端模塊,詳細(xì)的功能為:(1)用戶的登錄、注冊和注銷。訪客、用戶進(jìn)入網(wǎng)站后首先進(jìn)入首頁,若訪客沒有賬號,可以注冊一個賬號,系統(tǒng)將用戶數(shù)據(jù)傳入數(shù)據(jù)庫,即可登錄,若為訪客也可以進(jìn)行瀏覽搜索,只是不能夠進(jìn)行其他的任何操作,用戶也可以進(jìn)行注銷賬號,退出網(wǎng)站登錄。(2)首頁的文章、答疑、筆記信息的主頁顯示。用戶登錄后可以查看并對文章、筆記留言,對答疑進(jìn)行答復(fù)。(3)文章分類功能。用戶可以對自己發(fā)布的文章內(nèi)容進(jìn)行定義,例如前端、后端等,讓其他的用戶可以方便快捷的找到自己所需要的內(nèi)容。(4)文章模塊、答疑模塊和筆記模塊的管理功能。用戶可以對自己發(fā)布的內(nèi)容進(jìn)行基本的增刪改查操作。(5)數(shù)據(jù)的統(tǒng)計(jì)功能。網(wǎng)站可以實(shí)現(xiàn)對文章、答疑和筆記的統(tǒng)計(jì)功能。其流程圖如圖4-2所示:圖4-2功能結(jié)構(gòu)流程圖4.2系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)4.2.1數(shù)據(jù)庫邏輯設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)是校園論壇系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的關(guān)鍵部分。一個良好的數(shù)據(jù)庫設(shè)計(jì)能增強(qiáng)系統(tǒng)的安全性之外,同時還能使得校園論壇系統(tǒng)的運(yùn)行維護(hù)效率有所提升。根據(jù)實(shí)際情況,再結(jié)合前文需求分析以及系統(tǒng)用例分析,本系統(tǒng)運(yùn)用實(shí)體-聯(lián)系圖的方式,得出校園論壇系統(tǒng)的E-R圖設(shè)計(jì),如圖4-3所示。圖4-3校園論壇系統(tǒng)的實(shí)體聯(lián)系模型E-R圖局部E-R圖如下圖4-4所示:圖4-4局部E-R圖將實(shí)體轉(zhuǎn)化轉(zhuǎn)換為關(guān)系模式:(1)管理員與用戶關(guān)系模式為管理員與用戶(流水號,用戶名,密碼,加密鹽,角色編號,姓名,性別,電話,郵箱,年齡,工作地址)。(2)文章關(guān)系模式為文章(流水號,標(biāo)題,內(nèi)容,標(biāo)簽編號,分類編號,創(chuàng)建人編號,圖片路徑,留言總數(shù),瀏覽總數(shù))。(3)答疑關(guān)系模式為答疑(流水號,標(biāo)題,內(nèi)容,標(biāo)簽編號,分類編號,創(chuàng)建人編號,狀態(tài)值,留言總數(shù),瀏覽總數(shù))。(4)筆記關(guān)系模式為筆記(流水號,標(biāo)題,內(nèi)容,標(biāo)簽編號,分類編號,創(chuàng)建人編號,留言總數(shù),瀏覽總數(shù))。(5)留言評論關(guān)系模式為留言評論(流水號,用戶名,內(nèi)容,父級編號,創(chuàng)建人編號)。4.2.2數(shù)據(jù)庫物理設(shè)計(jì)(1)系統(tǒng)用戶與管理員表(sys_users),存儲本系統(tǒng)用戶和管理員的基本信息,主要用于登陸驗(yàn)證,設(shè)計(jì)如表4-1所示:表4-1用戶與管理員表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵userName賬號varchar(20)NotnullpassWord密碼varchar(100)Notnullsalt加密鹽varchar(100)NotnullroleId角色表外鍵int(10)外鍵realName真實(shí)姓名varchar(50)sex性別varchar(10)telephone電話varchar(20)email電子郵箱varchar(50)age年齡int(11)workingUnit工作地址varchar(100)createTime創(chuàng)建時間datetimeupdateTime更新時間datetimeisForbidden是否禁止bit(1)isDelete軟刪除bit(1)Notnull(2)系統(tǒng)角色表(sys_roles),主要存放的是系統(tǒng)的角色信息,設(shè)計(jì)如表4-2所示:表4-2系統(tǒng)角色表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵role角色名稱varchar(50)Notnulldescription角色描述varchar(100)NotnullpId父節(jié)點(diǎn)int(11)外鍵isDelete軟刪除bit(1)Notnull(3)用戶與角色表(sys_users_roles),主要用于存儲用戶擁有的角色信息,設(shè)計(jì)如表4-3所示:表4-3用戶與角色表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵userID系統(tǒng)用戶表IDint(10)Notnull外鍵roleID系統(tǒng)角色表IDint(10)Notnull外鍵createTime創(chuàng)建時間datetimeNotnullisDelete軟刪除bit(1)Notnull文章信息表(article_info),主要用于存儲文章的基本信息,設(shè)計(jì)如表4-4所示:表4-4文章信息表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵title標(biāo)題varchar(255)content文章內(nèi)容textcategoryId分類的idint(10)外鍵tagId標(biāo)簽的idvarchar(255)外鍵photoFilePath圖片路徑varchar(255)commentCount留言條數(shù)int(10)views看過條數(shù)int(10)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(5)文章留言表(article_comment),主要用于存儲對文章的留言,設(shè)計(jì)如表4-5所示:表4-5文章留言表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵content留言的內(nèi)容textusername留言的用戶名Varchar(255)NotnullcreateTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)articleId文章留言對應(yīng)的文章idint(10)外鍵isDelete軟刪除bit(1)Notnull(6)文章分類表(article_category),主要用于存儲文章分類的信息,設(shè)計(jì)如表4-6所示:表4-6文章分類表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵name文章分類名字varchar(255)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(7)文章標(biāo)簽表(article_tag),主要用于存儲文章標(biāo)簽的信息,設(shè)計(jì)如表4-7所示:表4-7文章標(biāo)簽表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵name文章標(biāo)簽名字varchar(255)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(8)答疑信息表(technical_order),主要用于存儲答疑的信息,設(shè)計(jì)如表4-8所示:表4-8答疑信息表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵questionTitle標(biāo)題varchar(255)content內(nèi)容textquestionPId父級分類IDvarchar(255)外鍵questionId分類IDint(10)外鍵status狀態(tài)值varchar(255)statusShow狀態(tài)值varchar(255)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)NotnullcommentCount留言條數(shù)int(10)views看過條數(shù)int(10)(9)問題分類表(technical_question),主要用于存儲問題分類的信息,設(shè)計(jì)如表4-9所示:表4-9問題分類表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵name分類名字varchar(255)pId父級IDint(10)外鍵createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(10)問題回復(fù)表(technical_reply),主要用于存儲問題回復(fù)的信息,設(shè)計(jì)如表4-10所示:表4-10問題回復(fù)表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵ticketId對應(yīng)回復(fù)的問題IDint(10)外鍵content回復(fù)內(nèi)容textuserName回復(fù)人姓名varchar(255)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(11)筆記信息表(note),主要用于存儲筆記內(nèi)容的信息,設(shè)計(jì)如表4-11所示:表4-11筆記信息表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵title標(biāo)題varchar(255)content內(nèi)容textclassificationPId分類父級IDint(10)外鍵classificationId分類IDint(10)外鍵view瀏覽條數(shù)int(10)comment留言條數(shù)int(10)createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(12)筆記分類表(note_classification),主要用于存儲筆記分類的信息,設(shè)計(jì)如表4-12示:表4-12筆記分類表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵name筆記標(biāo)簽名字varchar(255)pId父級IDint(10)外鍵createTime創(chuàng)建時間datetimecreateId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull(13)筆記留言表(note_comment),主要用于存儲筆記留言的信息,設(shè)計(jì)如表4-13所示:表4-13筆記留言表字段名字段描述字段類型是否為空備注id表idint(10)Notnull主鍵userName留言人姓名varchar(255)content留言內(nèi)容textcreateTime創(chuàng)建時間datetimenoteId留言對用的筆記IDint(10)外鍵createId創(chuàng)建人idint(10)isDelete軟刪除bit(1)Notnull第五章系統(tǒng)的實(shí)現(xiàn)5.1系統(tǒng)主要模塊的實(shí)現(xiàn)5.1.1管理員功能模塊管理員具有的管理功能主要是對用戶信息的管理,角色的管理,文章標(biāo)簽的管理,文章分類的管理,筆記類別的管理和問答類別的管理,具有增刪改查的全部功能。操作界面如圖5-1所示。圖5-1管理員界面用戶信息管理模塊用戶信息管理具體包括對用戶的查詢功能列表,可以是模糊查詢,也可以是精確查詢,其功能還包括對用戶進(jìn)行禁用功能,被禁用的用戶不可再登錄;對用戶的編輯功能,可以對用戶進(jìn)行編輯,賦予權(quán)限;對用戶進(jìn)行刪除功能,功能操作界面如圖5-2所示。圖5-2用戶信息管理界面角色信息管理模塊角色信息管理具體包括對角色的增刪改查功能和對角色進(jìn)行禁用或啟用功能,其查詢也是模糊或精確查詢,功能操作界面如圖5-3所示。圖5-3角色信息管理界面文章標(biāo)簽信息管理模塊文章標(biāo)簽信息管理具體包括對文章的標(biāo)簽進(jìn)行增刪改查操作,功能操作界面如圖5-4所示。圖5-4文章標(biāo)簽信息管理界面文章分類信息管理模塊文章分類信息管理具體包括對文章的分類進(jìn)行增刪改查操作,功能操作界面如圖5-5所示。圖5-5文章分類信息管理界面筆記類別信息管理模塊筆記類別信息管理具體包括對筆記的類別進(jìn)行增刪改查操作,對筆記類別做了一個折疊菜單,更容易清晰了解到層級的關(guān)系,功能操作界面如圖5-6所示。圖5-6筆記類別信息管理界面問答類別信息管理模塊問答類別信息管理具體包括對問答的類別進(jìn)行增刪改查操作,對問答類別做了一個折疊菜單,更容易清晰了解層級的關(guān)系,功能操作界面如圖5-7所示。圖5-7問答類別信息管理界面5.1.2用戶功能模塊用戶具有管理自己發(fā)布的信息的功能以及個人信息的管理功能,其中個人信息里的簡況主要是對用戶每年發(fā)布的信息做了一個統(tǒng)計(jì)的功能,主要以柱狀圖和折線圖的形式呈現(xiàn),操作界面如圖5-8所示。圖5-8用戶界面筆記管理模塊筆記管理主要是用戶對自己發(fā)布的筆記進(jìn)行一個管理的操作界面,如圖5-9所示。用戶可以對自己的筆記進(jìn)行一個增刪改查的操作,除此之外,還可以看到對每一條的筆記都有一個留言記錄的條數(shù)和一個瀏覽記錄的條數(shù)。圖5-9筆記信息發(fā)布筆記信息點(diǎn)擊圖5-7中的“添加”操作,跳轉(zhuǎn)至發(fā)布筆記的界面,如圖5-10所示,填寫完相應(yīng)信息之后,點(diǎn)擊提交即完成發(fā)布。圖5-10發(fā)布筆記界面修改已發(fā)布的筆記信息點(diǎn)擊相應(yīng)的“編輯”按鈕(如圖5-9),頁面跳轉(zhuǎn)至修改筆記信息界面對筆記相關(guān)信息進(jìn)行修改,如圖5-11所示。圖5-11修改筆記信息界面刪除信息點(diǎn)擊相應(yīng)的“刪除”按鈕(如圖5-9),頁面會彈出一個是否確定刪除的提示框,點(diǎn)擊確定則刪除該條作業(yè)信息,如圖5-12所示。圖5-12刪除筆記信息搜索查詢作筆記信息在圖5-9“標(biāo)題”中的搜索框中輸入關(guān)鍵字,點(diǎn)擊“搜索”可查詢到相應(yīng)的筆記信息,如圖5-13所示。圖5-13搜索筆記信息查詢結(jié)果查詢在主頁發(fā)布的筆記信息點(diǎn)擊相應(yīng)的“首頁”按鈕(如圖5-9,左上角),頁面跳轉(zhuǎn)至主頁界面,再點(diǎn)擊主界面的筆記按鈕,跳轉(zhuǎn)至筆記列表界面,如圖5-14所示。 圖5-14查詢在主頁發(fā)布的筆記信息點(diǎn)擊“瀏覽”按鈕,頁面跳轉(zhuǎn)至筆記詳情界面,如圖5-14-1所示,可以看到剛剛發(fā)布的筆記內(nèi)容信息情況,以及發(fā)布人的一些信息,瀏覽此筆記的條數(shù),還可以對此筆記進(jìn)行留言。圖5-14-1筆記詳情界面留言信息如圖5-14-2所示,可以看到對此筆記的留言信息。圖5-14-2留言信息問答管理模塊問答管理模塊主要是用戶對自己發(fā)布的問題進(jìn)行管理的操作界面,管理界面如圖5-15所示。其主要的功能是對用戶自己發(fā)布的問題進(jìn)行增刪改查功能,以及一個問題是否解決的狀態(tài)值顯示和對此問題的留言條數(shù)和瀏覽條數(shù)的統(tǒng)計(jì)。 圖5-15問答管理界面發(fā)布問題信息點(diǎn)擊相應(yīng)“發(fā)布提問”的按鈕(如圖5-15),頁面跳轉(zhuǎn)至發(fā)布提問的詳情頁面,如圖5-16、圖5-17、圖5-18所示,選擇要發(fā)布的問題信息,再選擇具體的問題信息,填完發(fā)布的問題信息,提問者信息等,點(diǎn)擊提交即可發(fā)布。圖5-16第一步圖5-17第二步圖5-18第三步查看發(fā)布的問題信息點(diǎn)擊相應(yīng)“查看”按鈕(如圖5-15),頁面跳轉(zhuǎn)至問題的詳情信息,可以看到其他用戶對此問題的評論,以及是否解決的按鈕。如圖5-19所示。圖5-19查看發(fā)布的問題信息編輯發(fā)布的問題信息點(diǎn)擊相應(yīng)“編輯”按鈕(如圖5-15),跳轉(zhuǎn)到問題的編輯頁面,對問題進(jìn)行修改,與圖5-11相似。刪除發(fā)布的問題信息與圖5-12相似。查看主頁發(fā)布的問題信息點(diǎn)擊相應(yīng)“首頁”按鈕(如圖5-15),頁面跳轉(zhuǎn)至首頁,點(diǎn)擊首頁的問答,跳轉(zhuǎn)到問答列表,點(diǎn)擊回答即會跳轉(zhuǎn)到圖5-19。其問答列表如圖5-20所示。圖5-20問答列表文章管理模塊文章管理模塊主要是用戶對自己發(fā)布的文章進(jìn)行管理的操作界面。如圖5-21所示。其主要的功能是用戶對自己發(fā)布的文章進(jìn)行增刪改查的操作以及圖片上傳的操作。圖5-21文章管理界面發(fā)布文章信息點(diǎn)擊相應(yīng)“添加”按鈕(如圖5-21),跳轉(zhuǎn)到對應(yīng)的發(fā)布文章頁面,填寫完相應(yīng)的信息,點(diǎn)擊提交即可發(fā)布,如圖5-22所示。圖5-22發(fā)布文章信息編輯發(fā)布的文章信息編輯操作與圖5-11相似。刪除文章信息刪除操作與圖5-12相似查看主頁的文章信息點(diǎn)擊相應(yīng)“首頁”按鈕(如圖5-21),跳轉(zhuǎn)至首頁界面,點(diǎn)擊首頁的文章按鈕,跳轉(zhuǎn)至文章列表,如圖5-23所示。圖5-23文章列表個人信息管理模塊個人信息管理主要包括簡況、修改基礎(chǔ)信息和修改密碼功能。簡況模塊,主要是用于統(tǒng)計(jì)用戶每年發(fā)布的筆記條數(shù)、問答條數(shù)以及文章條數(shù),并以柱狀圖的形式呈現(xiàn)出來;統(tǒng)計(jì)用戶每年發(fā)布的前十瀏覽總數(shù)的文章并以折線圖的形式呈現(xiàn)出來。如圖5-24所示。圖5-24個人簡況修改信息,主要是用于用戶對自己的基本信息的修改功能。包括真實(shí)姓名、性別、手機(jī)號碼、電子郵箱、年齡和所在地址等信息。修改密碼,主要是利用用戶的電子郵箱對驗(yàn)證碼進(jìn)行獲取,從而實(shí)現(xiàn)修改密碼的功能。其郵箱獲取的驗(yàn)證碼如圖5-25所示。圖5-25郵箱驗(yàn)證碼5.1.3訪客功能模塊訪客具有瀏覽搜索的功能,可以對筆記模塊、問答模塊和文章模塊進(jìn)行瀏覽和搜索。其進(jìn)入系統(tǒng)首頁如圖5-26所示,進(jìn)入問答模塊如圖5-20所示,進(jìn)入筆記模塊如圖5-14所示,進(jìn)入文章模塊如圖5-23所示。訪客想要留言評論則需要進(jìn)行登錄。圖5-26首頁界面圖5-27訪客留言評論5.2系統(tǒng)關(guān)鍵算法與技術(shù)5.2.1運(yùn)用Ajax技術(shù)實(shí)現(xiàn)用戶登錄功能運(yùn)用Ajax技術(shù)實(shí)現(xiàn)用戶登錄是本系統(tǒng)的重要技術(shù)。通過Ajax技術(shù)實(shí)現(xiàn)的用戶登錄界面可以使得用戶登錄輸入的信息有誤時,只進(jìn)行局部刷新,也就是只刷新報錯的提示信息,而無需再重新輸入信息,根據(jù)錯誤提示信息修改已經(jīng)輸入的信息即可,這樣即減少了請求響應(yīng)的時間,又一定程度上方便了用戶。$.ajax({url:"/loginProcess",$.ajax({url:"/loginProcess",method:'POST',contentType:"application/x-www-form-urlencoded",data:param,dataType:"json",success:function(data){if(data.status=="success"){window.location.href="/index";}else{layer.alert(data.message);}},error:function(){layer.alert("失敗");}})接收傳值實(shí)現(xiàn)登錄核心代碼(詳細(xì)代碼可見附錄)if(!validateCode.equals(v)){if(!validateCode.equals(v)){//returnResponseCode.error(StatusEnums.VALIDATECODE_ERROR);JSONObjectresult=newJSONObject();result.put("message","驗(yàn)證碼錯誤!");returnresult.toJSONString();}Subjectsubject=SecurityUtils.getSubject();UsernamePasswordTokentoken=newUsernamePasswordToken(username,password);subject.login(token);SysUsersusers=(SysUsers)subject.getPrincipal();session.setAttribute("user",users);Stringusername=sysUsers.getUserName();Stringpassword=sysUsers.getPassWord();Sessionsession=SecurityUtils.getSubject().getSession();//轉(zhuǎn)化成小寫字母StringvalidateCode=sysUsers.getValidateCode();validateCode=validateCode.toLowerCase();Stringv=(String)session.getAttribute(Constants.KAPTCHA_SESSION_KEY);//還可以讀取一次后把驗(yàn)證碼清空,這樣每次登錄都必須獲取驗(yàn)證碼//session.removeAttribute("_come"); JSONObjectjson=newJSONObject();5.2.2郵箱接收驗(yàn)證碼郵箱接收驗(yàn)證碼是本系統(tǒng)修改密碼的關(guān)鍵技術(shù)。通過郵箱給用戶發(fā)送一個隨機(jī)的6位數(shù)驗(yàn)證碼,通過驗(yàn)證碼更改用戶的密碼。//郵箱信息SimpleMailMessagemailMessage=newSimpleMailMessage();//郵箱信息SimpleMailMessagemailMessage=newSimpleMailMessage();//主題mailMessage.setSubject("驗(yàn)證碼");//生成隨機(jī)數(shù)StringvalidateCode=randomCode();System.out.println("code="+validateCode);//將隨機(jī)數(shù)放置到session中session.setAttribute("email",email);session.setAttribute("validateCode",validateCode);//內(nèi)容mailMessage.setText("驗(yàn)證碼是:"+validateCode);//發(fā)給誰mailMessage.setTo(email);//你自己的郵箱mailMessage.setFrom(from);//發(fā)送mailSender.send(mailMessage);returntrue;//獲取session中的驗(yàn)證信息Stringemail=(String)session.getAttribute("email");//獲取session中的驗(yàn)證信息Stringemail=(String)session.getAttribute("email");Stringcode=(String)session.getAttribute("validateCode");//獲取表單中的提交的驗(yàn)證信息StringvoCode=sysUsers.getValidateCode();//如果email數(shù)據(jù)為空,或者不一致,失敗if(email==null||email.isEmpty()){returnfalse;}elseif(!voCode.equals(code)){returnfalse;}//跳轉(zhuǎn)成功頁面returntrue;5.2.3圖片上傳FinalStringlocalPath="D:\\knowledge\\knowledge-master\\src\\main\\resources\\static\\user\\upload\\images";FinalStringlocalPath="D:\\knowledge\\knowledge-master\\src\\main\\resources\\static\\user\\upload\\images";//上傳后保存的文件名(需要防止圖片重名導(dǎo)致的文件覆蓋)//獲取文件StringfileName=file.getOriginalFilename();//獲取文件后綴名StringsuffixName=fileName.substring(fileName.lastIndexOf("."));//重新生成文件名fileName=UUID.randomUUID()+suffixName;if(FileUtilws.upload(file,localPath,fileName)){//文件存放的相對路徑(一般存放在數(shù)據(jù)庫用于img標(biāo)簽的src)StringrelativePath="/userimg/"+fileName;root.put("relativePath",relativePath);//前端根據(jù)是否存在該字段來判斷上傳是否成功result_msg="圖片上傳成功";}else{result_msg="圖片上傳失敗";}

第六章系統(tǒng)測試6.1系統(tǒng)測試概述因本系統(tǒng)功能模塊繁雜,限于篇幅,本章僅列舉重點(diǎn)功能的測試用例。6.1.1測試目的本系統(tǒng)用例測試目的有以下兩點(diǎn):確認(rèn)能否達(dá)到預(yù)期完成的目標(biāo);檢測本系統(tǒng)功能是否都能正常使用;確認(rèn)系統(tǒng)質(zhì)量。根據(jù)測試結(jié)果,進(jìn)一步完善系統(tǒng)。6.1.2測試環(huán)境本章測試用例的環(huán)境以及所用根據(jù)表,如表6-1所示。表6-1系統(tǒng)用例測試環(huán)境表集成開發(fā)工具VisualStudioCode測試運(yùn)行工具Firefox網(wǎng)絡(luò)環(huán)境設(shè)備已連接Internet,無端口使用限制操作系統(tǒng)Windows10Web應(yīng)用服務(wù)器Tomcat7.0(端口號:8088)數(shù)據(jù)庫MySQL5.56.2系統(tǒng)功能用例測試6.2.1通過QQ郵箱獲取驗(yàn)證碼信息修改密碼測試用戶能否正常使用郵箱獲取驗(yàn)證碼來修改密碼,以用戶為例,如表6-2:表6-2郵箱修改密碼用例測試用例編號001用例名稱通過QQ郵箱修改密碼前置條件用戶登錄預(yù)期結(jié)果能夠獲取驗(yàn)證碼并修改密碼成功操作布置用戶登錄獲取驗(yàn)證碼修改密碼測試結(jié)果修改密碼成功功能達(dá)到預(yù)期效果,測試通過,如以下步驟所示:用戶成功登錄系統(tǒng),如圖6-1所示。圖6-1用

溫馨提示

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

最新文檔

評論

0/150

提交評論