【維普】軟件工程-基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
【維普】軟件工程-基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
【維普】軟件工程-基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
【維普】軟件工程-基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
【維普】軟件工程-基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于協(xié)同過濾算法的網(wǎng)文生態(tài)圈系統(tǒng)的設(shè)計與實現(xiàn)目錄PAGEIV目錄TOC\o"1-3"\h\u24523摘要 III26869Abstract IV122471緒論 1193301.1研究的背景及意義 185061.2國內(nèi)外發(fā)展現(xiàn)狀 1309371.2.1國內(nèi)的網(wǎng)文網(wǎng)站發(fā)展 1119901.2.2網(wǎng)文網(wǎng)站的國外發(fā)展現(xiàn)狀 1165831.3主要技術(shù) 2286511.3.1協(xié)同過濾算法 2290671.3.2智能標簽 3178471.3.3Springboot 3275171.3.4Vue框架技術(shù)介紹 3191951.3.5數(shù)據(jù)庫 4212461.4課題的主要研究工作 4155381.5論文的組織結(jié)構(gòu) 5232472系統(tǒng)分析 634562.1系統(tǒng)需求分析 6128662.1.1系統(tǒng)功能需求分析 686152.1.2系統(tǒng)非功能需求分析 7158502.2系統(tǒng)可行性分析 8244432.3數(shù)據(jù)流程 8139932.4本章小結(jié) 9247543系統(tǒng)總體設(shè)計 11272123.1系統(tǒng)總體架構(gòu)設(shè)計 11130643.2功能模塊設(shè)計 12292243.3數(shù)據(jù)庫設(shè)計 12192013.3.1數(shù)據(jù)庫實體設(shè)計 1259513.3.2數(shù)據(jù)庫表設(shè)計 1386643.4接口設(shè)計 1563993.4本章小結(jié) 15327384系統(tǒng)詳細設(shè)計 16293444.1系統(tǒng)功能模塊詳細設(shè)計 16160974.1.1用戶登錄注冊模塊 16237084.1.2上傳功能 16276804.1.3書評模塊 17294134.1.4閱讀網(wǎng)文模塊功能 18123724.1.5個人信息管理模塊 19280934.1.6首頁推薦 20213924.2對象設(shè)計 2126554.3交互設(shè)計 2296804.3.1用戶登錄注冊模塊時序圖 22270944.3.2上傳功能模塊時序圖 2363754.3.3書評模塊時序圖 2481234.3.4閱讀網(wǎng)文模塊時序圖 25324694.3.5個人信息管理模塊時序圖 25142585系統(tǒng)功能實現(xiàn) 26142865.1功能模塊實現(xiàn) 26286235.1.1登錄注冊模塊的設(shè)計與實現(xiàn) 26136915.1.2上傳功能模塊的設(shè)計與實現(xiàn) 2759805.1.3書評模塊的設(shè)計與實現(xiàn) 2895295.1.4閱讀網(wǎng)文模塊的設(shè)計與實現(xiàn) 29155085.1.5個人信息管理模塊的設(shè)計與實現(xiàn) 31249325.1.6首頁推薦的設(shè)計與實現(xiàn) 31269446系統(tǒng)測試 3325486.1測試計劃 33280146.2測試方法 33263516.3功能用例 33288146.3.1登錄功能測試 3329426.3.2書評功能測試 3412046.3.3信息發(fā)布測試 3499026.4非功能測試 3553437總結(jié)與展望 365915參考文獻 373692致謝 39摘要摘要近年來,隨著網(wǎng)絡(luò)文學(xué)的快速發(fā)展,用戶規(guī)模不斷擴大,在這個信息爆炸的時代,用戶喜歡閱讀什么樣的作品,怎樣推薦給讀者才能讓讀者快速找到自己感興趣的作品,這就需要一種新的技術(shù)來解決這些問題。協(xié)同過濾推薦算法可以在用戶之間根據(jù)共同興趣進行相似度計算,從而完成個性化推薦。文章在介紹協(xié)同過濾算法原理及分類的基礎(chǔ)上,重點研究了協(xié)同過濾在網(wǎng)文生態(tài)圈中的應(yīng)用,根據(jù)用戶需求給出了一種基于協(xié)同過濾的網(wǎng)文生態(tài)圈的設(shè)計和實現(xiàn)方案。該方案包含了協(xié)同過濾算法、系統(tǒng)設(shè)計、以及部分實現(xiàn)細節(jié)。系統(tǒng)采用JAVA語言設(shè)計實現(xiàn),在性能測試中顯示在不同負載下推薦效果良好。該研究為網(wǎng)文生態(tài)圈的應(yīng)用提供了理論支持和技術(shù)支持 本系統(tǒng)采用前后端分離式開發(fā)方式,前端使用vue框架,后端使用SpringBoot框架,設(shè)計并實現(xiàn)了一個智能推薦網(wǎng)文的系統(tǒng),實現(xiàn)從基本的用戶注冊、用戶管理,到書籍評價,上傳作品等功能,旨在幫助人們更快找到符合自己口味的網(wǎng)文,減少盲目閱讀的時間。本系統(tǒng)具備很好的可行性與實用性。關(guān)鍵詞:網(wǎng)文;協(xié)同過濾;興趣;相似度;推薦AbstractDesignandimplementationofanonlinetextecosystembasedoncollaborativefilteringalgorithmAbstractInrecentyears,withtherapiddevelopmentofonlineliterature,thescaleofusershasbeenexpanding.Inthiseraofinformationexplosion,whatkindofworksusersliketoreadandhowtorecommendthemtoreadersinordertoletthemfindtheworkstheyareinterestedinquicklyrequireanewtechnologytosolvetheseproblems.Thecollaborativefilteringrecommendationalgorithmcancalculatethesimilaritybetweenusersbasedontheircommoninterests,soastocompletepersonalizedrecommendation.Basedontheintroductionoftheprincipleandclassificationofcollaborativefilteringalgorithm,thearticlefocusesontheapplicationofcollaborativefilteringintheonlinetextecosystem,andgivesadesignandimplementationschemeoftheonlinetextecosystembasedoncollaborativefilteringaccordingtousers'needs.Theschemecontainscollaborativefilteringalgorithm,systemdesign,andsomeimplementationdetails.ThesystemisdesignedandimplementedinJAVAlanguageandshowsgoodrecommendationsunderdifferentloadsinperformancetests.Theresearchprovidestheoreticalsupportandtechnicalsupportfortheapplicationofwebtextecosphere.Thissystemadoptsthefront-endandback-endseparateddevelopmentmethod,usingvueframeworkonthefront-endandSpringBootframeworkontheback-end,todesignandimplementasystemofintelligentrecommendationofonlinearticles,frombasicuserregistration,usermanagement,tobookevaluation,uploadingworksandotherfunctions,aimingtohelppeoplefindonlinearticlesthatmeettheirtastesfasterandreducethetimeofblindreading.Thissystemhasgoodfeasibilityandpracticality.Keywords:Onlinetext;collaborativefiltering;interest;similarity第1章緒論PAGE171緒論1.1研究的背景及意義 近年來,隨著互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)小說或者叫做網(wǎng)文已經(jīng)成為了現(xiàn)代文化的一種重要組成部分。越來越多的人在網(wǎng)絡(luò)上進行文學(xué)創(chuàng)作,網(wǎng)文作品數(shù)量急速上升。在此同時,用戶在進行文學(xué)閱讀活動的時候也隨之增加,網(wǎng)絡(luò)小說成為了一種新時代的文化現(xiàn)象。然而,網(wǎng)絡(luò)小說的產(chǎn)生與傳播方式與傳統(tǒng)出版物有著很大的不同。在傳統(tǒng)出版中,人們通常會前往書店或者借閱圖書館的圖書,而網(wǎng)絡(luò)小說則是通過各種網(wǎng)站進行發(fā)布和傳播,用戶可以通過電腦、手機等多種終端進行閱讀。這種方式為用戶帶來了很大的便利,用戶不再需要到實體書店購買書籍,而是可以在網(wǎng)上隨時隨地閱讀自己感興趣的小說。同時,網(wǎng)絡(luò)小說的作者也可以更加便捷地進行創(chuàng)作,不需要經(jīng)過傳統(tǒng)出版的審查與評估。網(wǎng)絡(luò)小說在傳播和創(chuàng)作的方式上都更加自由和開放,但也帶來了相應(yīng)的新問題:在如此龐大的網(wǎng)文生態(tài)系統(tǒng)中,如何讓用戶更快地找到自己喜歡的作品?1.2國內(nèi)外發(fā)展現(xiàn)狀1.2.1國內(nèi)的網(wǎng)文網(wǎng)站發(fā)展閱文集團旗下的起點中文網(wǎng)是目前國內(nèi)最大的網(wǎng)文網(wǎng)站,在不區(qū)分網(wǎng)文種類的情況下,其首頁采用的是暢銷榜,月票榜,閱讀指數(shù)榜等榜單形式來推送書籍,這些排行榜單依托的是書友為某一個網(wǎng)文打賞的金額或者某一網(wǎng)文同期內(nèi)讀者的數(shù)量來進行排行,那么這種推送的方式是鼓勵作者去形成一定的粉絲群體,本質(zhì)上是一種利好于作者的商業(yè)模式。[]榜單前十的文章不一定是差文章,但是對于需要閑暇之余愉悅身心的讀者用戶來說,也不一定是自己想看的文章。筆趣閣是現(xiàn)有的最大的盜版網(wǎng)文網(wǎng)站,其免費的閱讀模式也吸引了眾多書蟲。筆趣閣內(nèi),其首頁也就是書城,推送的書籍為各個作品分類的評分前十,也就是讀者對作品的評價。對于筆趣閣的用戶來說,他們是真正的閱讀者,他們不用成為某一個寫手的粉絲,不用去操心作者的榜單排名,不用參與任何打榜行動,他們真正關(guān)心的就是網(wǎng)文作品的質(zhì)量,影響他們對某一作品的評分的大部分時候只會是作品本事的質(zhì)量,所以這是一種利好于讀者的推送模式。1.2.2網(wǎng)文網(wǎng)站的國外發(fā)展現(xiàn)狀國外的網(wǎng)文小說網(wǎng)站自20世紀90年代開始發(fā)展,初期以英文小說為主,包括經(jīng)典文學(xué)作品和流行文學(xué)作品。隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展和全球化趨勢的加速,越來越多的國外小說網(wǎng)站開始涌現(xiàn)。其中一些網(wǎng)站致力于推廣本土文學(xué)作品,為作者提供平臺,并為讀者提供多樣化的閱讀選擇。以下是一些知名的國外小說網(wǎng)站:Wattpad(加拿大):全球最大的在線寫作社區(qū)之一,提供各類文學(xué)作品和自助出版服務(wù)。Scribd(美國):一個數(shù)字化文檔庫,用戶可以上傳、分享和下載各種文學(xué)作品。Webnovel(美國):美國版的起點中文網(wǎng),提供各類英文網(wǎng)絡(luò)小說,包括玄幻、仙俠、言情等。Royal

Road(美國):一家特色小說網(wǎng)站,提供大量的原創(chuàng)網(wǎng)絡(luò)小說和輕小說,以及一些小說游戲。F(美國):專門收錄各種電視、電影、漫畫、游戲等作品的同人小說,并提供在線閱讀和討論交流功能。 這些小說網(wǎng)站在閱讀、出版、數(shù)字化寫作等方面提供了新的機會和挑戰(zhàn),讓作者和讀者都能夠從中受益。1.3主要技術(shù)1.3.1協(xié)同過濾算法是比較經(jīng)典常用的\t"/qq_45301231/article/details/_blank"推薦算法,基本思想是根據(jù)用戶的歷史行為數(shù)據(jù)的挖掘發(fā)現(xiàn)用戶的興趣愛好,基于不同的興趣愛好對用戶進行劃分并推薦興趣相似的商品給用戶主要分為基于用戶的協(xié)同過濾算法和基于物品的系統(tǒng)過濾算法。對于基于用戶來A說,就是通過算法找到與用戶A擁有相似興趣的另一用戶B,并將B喜歡的推薦給A。在尋找相似用戶B的過程中,可以使用余弦相似度來進行比較,它衡量了用戶A和用戶B之間的向量夾角,當(dāng)夾角越小則說明的兩者之間相似度越大。為了考慮的更為的全面,用戶相似度作為加權(quán)值,對于某一物品,它的評分和此用戶的所有評分的差值進行加權(quán)平均。對于基于物品來說,根據(jù)所有用戶的歷史偏好數(shù)據(jù)計算物品之間的相似性,然后把與用戶喜歡的物品相類似的物品推薦給用戶。比如物品a和c非常相似,因為喜歡a的用戶同時也喜歡c,而用戶A喜歡a,所以把c推薦給用戶A。假設(shè)有五個物品,首先計算一下物品5和物品1,2,3,4之間的相似性(它們也是向量的形式,每一列的值就是它們的向量表示,因為該算法認為物品a和物品c具有很大的相似度是因為喜歡物品a的用戶大都喜歡物品c,所以就可以基于每個用戶對該物品的打分或者說喜歡程度來向量化物品);找出與物品5最相近的n個物品;根據(jù)用戶A對最相近的n個物品的打分去計算對物品5的打分情況。1.3.2智能標簽系統(tǒng)根據(jù)用戶注冊時的人臉信息和基本信息,生成用戶的智能標簽;根據(jù)智能標簽在首頁推薦可能是讀者喜好閱讀的書籍;根據(jù)用戶閱讀和參加的書評標簽更新用戶已有的智能標簽;1.3.3Springboot框架的選用會使用Springboot,Springboot不僅繼承了Spring框架原有的優(yōu)秀特性,而且還通過簡化配置來進一步簡化了Spring應(yīng)用的整個搭建和開發(fā)過程。另外SpringBoot通過集成大量的框架使得依賴包的版本沖突,以及引用的不穩(wěn)定性等問題得到了很好的解決Springboot簡化了Spring應(yīng)用程序的創(chuàng)建和開發(fā)過程,并且摒棄了較為繁瑣xml的配置過程,采用了默認配置簡化。直接使用了javamain的方式啟動內(nèi)嵌的Tomcat服務(wù)器Springboot程序。使用Springboot會相當(dāng)簡便。SpringBoot是一個開源的Java開發(fā)框架,它能夠快速搭建基于Spring框架的應(yīng)用程序。SpringBoot的設(shè)計初衷是簡化Spring框架的使用,并使得Spring應(yīng)用程序的構(gòu)建和部署變得更加快速、簡便和靈活。SpringBoot提供了很多開箱即用的功能,如自動配置、內(nèi)嵌Web服務(wù)器、監(jiān)控、安全、數(shù)據(jù)訪問等。這些功能能夠讓開發(fā)人員快速開發(fā)并部署一個完整的Spring應(yīng)用程序,而無需進行過多的配置。SpringBoot的優(yōu)勢在于它提供了強大的依賴管理和自動化配置,讓開發(fā)人員能夠更加專注于業(yè)務(wù)邏輯的開發(fā)而不是繁瑣的配置。開發(fā)人員只需要通過Maven或Gradle等構(gòu)建工具添加相應(yīng)的依賴,SpringBoot就會自動地配置這些依賴,從而簡化了開發(fā)過程??傊?,SpringBoot提供了一個高效、簡便、靈活的開發(fā)環(huán)境,可以幫助開發(fā)人員更快地構(gòu)建和部署Spring應(yīng)用程序。因此,選擇SpringBoot作為開發(fā)系統(tǒng)后臺的技術(shù)是毋庸置疑的。1.3.4Vue框架技術(shù)介紹Vue.js是一個用于構(gòu)建用戶界面的漸進式JavaScript框架。它是一個輕量級、高效、易于學(xué)習(xí)和使用的前端框架。Vue.js的核心思想是提供一個簡潔、易于理解的API,并可以將數(shù)據(jù)和UI組件無縫綁定在一起,以便開發(fā)人員可以更輕松地構(gòu)建交互式、高性能的Web應(yīng)用程序。Vue.js有很多優(yōu)點。首先,它使用雙向數(shù)據(jù)綁定機制,允許數(shù)據(jù)和UI組件自動同步更新。其次,Vue.js的組件化開發(fā)使開發(fā)人員能夠?qū)⒁粋€大型應(yīng)用程序分解為多個組件,從而提高代碼的可重用性和可維護性。此外,Vue.js還提供了一些有用的功能,如指令、過濾器、插件等,可以讓開發(fā)人員更容易地開發(fā)Web應(yīng)用程序。Vue.js的另一個優(yōu)點是它的高效性能。Vue.js采用了虛擬DOM技術(shù),大大提高了web應(yīng)用的性能。虛擬DOM可以將所有頁面元素轉(zhuǎn)換為JavaScript對象,當(dāng)頁面數(shù)據(jù)發(fā)生變化時,只更新已更改的部分,從而避免了整個頁面的重新呈現(xiàn),提高了web應(yīng)用程序的性能。此外,Vue.js還支持高級特性,如路由、狀態(tài)管理、Webpack集成等。Vue.js的路由功能可以讓開發(fā)者更方便的進行頁面導(dǎo)航和URL管理。狀態(tài)管理功能可以幫助開發(fā)人員更好地管理web應(yīng)用的狀態(tài)。Webpack集成可以幫助開發(fā)人員更好地打包和構(gòu)建。總之,Vue.js是一種強大、高效、易于學(xué)習(xí)的前端框架,它可以幫助開發(fā)人員更加方便地構(gòu)建Web應(yīng)用程序。Vue.js具有很多優(yōu)勢,如雙向數(shù)據(jù)綁定、組件化開發(fā)、虛擬DOM技術(shù)、路由、狀態(tài)管理等,能夠使得開發(fā)人員更加高效地開發(fā)出性能高效、交互性強的Web應(yīng)用程序。由于其易學(xué)易用的特點,Vue.js已經(jīng)成為了當(dāng)今最流行的前端框架之一,并且在Web開發(fā)領(lǐng)域得到了廣泛的應(yīng)用。1.3.5數(shù)據(jù)庫MySQL是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。MySQL所使用的SQL語言是用于訪問數(shù)據(jù)庫的最常用標準化語言。MySQL軟件采用了雙授權(quán)政策,分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫。而本系統(tǒng)是網(wǎng)文系統(tǒng),網(wǎng)文數(shù)據(jù)每日都會更新。1.4課題的主要研究工作此系統(tǒng)以協(xié)同過濾算法為基礎(chǔ),通過計算相似度和用戶對作品的期望來綜合向用戶推薦他喜歡的網(wǎng)文,可以允許用戶對某一作品發(fā)布自己對其的書評,以及用戶在論壇里閱讀他人對各個書籍的評級來幫助自己尋找想看的網(wǎng)文,并且管理員對書籍以及書評進行管理,違規(guī)違法將進行封禁。1.個人信息管理功能:修改密碼,更換頭像,更換昵稱2.登錄注冊功能:新用戶進行注冊,注冊時需要進行驗證,并且初次填寫自己的閱讀喜好,注冊成功后,就可以用賬號密碼登錄進入。3.用戶閱讀功能:可以在線閱讀感興趣的網(wǎng)文4.書評功能:可以在論壇發(fā)布關(guān)于某本書籍的書評,也可以在書籍主頁進入專門有關(guān)本書的書評區(qū)進行書評。可以對他人的書評進行評論或點贊,對他人的評論進行回復(fù)。5.收藏關(guān)注功能:收藏或者關(guān)注喜歡的寫手或者作者6.管理員管理功能:對書評或者評論進行文明管理,對書籍上傳進行審核管理。7.發(fā)布書籍功能:用戶也可以發(fā)布自己寫的網(wǎng)文8.搜索功能:論壇看到感興趣的書籍,可以直接進行搜索查找1.5論文的組織結(jié)構(gòu)本文一共分為五個章節(jié),現(xiàn)對這些章節(jié)進行簡述。第一章緒論。本章主要介紹課題的背景和意義,并對國內(nèi)外發(fā)展現(xiàn)狀以及主要技術(shù)進行相關(guān)闡述分析,最后提出本課題的主要研究工作以及本文的組織結(jié)構(gòu)。第二章系統(tǒng)關(guān)鍵技術(shù),對本課題開發(fā)過程中需要使用的關(guān)鍵技術(shù)進行分析。第三章系統(tǒng)分析。本章對系統(tǒng)的功能需求和性能需求進行分析,對架構(gòu)與相應(yīng)模塊進行設(shè)計,以及對整個系統(tǒng)進行可行性分析。第四章系統(tǒng)設(shè)計,對本課題的系統(tǒng)設(shè)計進行描述,包括數(shù)據(jù)庫設(shè)計,功能設(shè)計,以及對象設(shè)計和交互設(shè)。第五章系統(tǒng)詳細設(shè)計。本章主要介紹了系統(tǒng)的開發(fā)環(huán)境、技術(shù)選型以及開發(fā)工具,然后詳細闡述了系統(tǒng)的各個模塊的設(shè)計與實現(xiàn)。第六章系統(tǒng)測試與驗證。本章主要介紹對系統(tǒng)進行的相應(yīng)的功能測試以及性能測試,并對測試結(jié)果進行分析。第七章總結(jié)與展望。本章主要總結(jié)對整個研究課題進行總結(jié),對其中存在的問題以及不足之處進行說明,并進行一些未來展望。第2章系統(tǒng)關(guān)鍵技術(shù)第2章系統(tǒng)分析2系統(tǒng)分析在本章中,將會對整個系統(tǒng)進行功能需求分析以及性能需求分析,并進行系統(tǒng)整體架構(gòu)設(shè)計以及系統(tǒng)各個模塊的概要設(shè)計。最后對整個系統(tǒng)進行可行性分析并判斷整個課題是否具有可行性。2.1業(yè)務(wù)分析本系統(tǒng)共分為管理員和用戶兩種角色。管理員可以對整個系統(tǒng)進行監(jiān)控和管理,包括的功能有新增作品信息,修改作品信息,封禁用戶,解封用戶,添加標簽,添加首頁咨詢,新增作家信息。用戶可以進行用戶注冊,用戶登錄,發(fā)表評論,回復(fù)評論,查看評論,上傳文章,標簽使用,用戶信息修改,問題反饋,舉報評論等功能。用例圖如下所示:圖2.1用戶用例圖圖2.2管理員用例圖2.2系統(tǒng)需求分析2.2.1系統(tǒng)功能需求分析用戶角色(1)登錄注冊:用戶登錄注冊模塊主要功能分為用戶的登錄和注冊,當(dāng)以有賬號的用戶登錄時只需要輸入賬號密碼就可以登錄,而未擁有賬號的用戶需要先進行注冊賬號才能正常使用網(wǎng)站,否則只能是以游客身份登錄使用。而為了私密性,系統(tǒng)采用了人臉識別方式解鎖登錄。(2)上傳作品:用戶可以通過申請邀請碼來獲得上傳自我寫作的作品上傳的資格,填寫完邀請碼后進入作品管理頁面即可上傳自己的作品,由管理員審核通過后就可以被大家所看到。(3)書評功能:用戶可以在自己想要評論的作品下方進行評論,也可以回復(fù)他人的書評。(4)閱讀網(wǎng)文:用戶登錄過后可以閱讀自己感興趣的作品,未登錄的游客只能閱讀限定的章節(jié)數(shù)。(5)查看首頁推送:根據(jù)個人的喜好和瀏覽記錄,系統(tǒng)對用戶進行愛好推測從而將相關(guān)網(wǎng)文推送在首頁供用戶閱讀。(6)個人信息管理:擁有賬號的用戶可以對自己的賬號進行信息管理,可以修改自己的密碼,更換昵稱,更換頭像,更換性別等。2、管理員角色 (1)登錄:管理員使用管理員賬號進入管理員端頁面、(2)系統(tǒng)管理:管理對系統(tǒng)進行總體管理,可以封禁或解封用戶的賬號,可以對書評進行刪除等。(3)作家管理:對成為作家的用戶進行管理,發(fā)放邀請碼等。(4)系統(tǒng)監(jiān)控:檢測系統(tǒng)的使用情況,查看日志等。2.2.2系統(tǒng)非功能需求分析(1)性能需求除了基本的功能需求外,點餐系統(tǒng)還需要滿足以下基本的性能需求:系統(tǒng)運行穩(wěn)定;數(shù)據(jù)渲染準確;交互界面便于用戶操作;系統(tǒng)需兼容IOS與Android系統(tǒng);基礎(chǔ)并發(fā)量須達到100以上,在多請求的情況下小程序能夠正常運行;程序響應(yīng)時間在2000ms之內(nèi),保證系統(tǒng)能及時對操作做出回應(yīng)??删S護性與可擴展性本系統(tǒng)前后端分離,命名規(guī)范,代碼有層次,如果需要修改部分功能,不會牽一發(fā)而動全身,容易維護;增加新功能時不需要修改原來的代碼,只需要添加該功能的代碼,代碼復(fù)用性強2.3系統(tǒng)可行性分析1、技術(shù)可行性分析:Java是一種應(yīng)用廣泛的編程語言,框架穩(wěn)定、技術(shù)成熟功能強大并且在安全性和可靠性方面具有一定的優(yōu)勢。Springboot是較為簡便易上手操作的框架類型,而智能推送環(huán)節(jié)考慮到協(xié)同過濾算法也有局限性因此加入智能標簽,以及為了考慮的更為全面,對相似度進行了加權(quán)平均的比較。2、經(jīng)濟可行性分析:本系統(tǒng)采用的軟件Idea、Mysql等都是開源的,在網(wǎng)上可以直接找到下載資源,開發(fā)成本低,且開發(fā)即可展示效果,不需要大型復(fù)雜的服務(wù)器支持開發(fā)和運行,開發(fā)該系統(tǒng)的成為幾乎為零,所以說經(jīng)濟上是可行的。3、操作可行性分析:對于該系統(tǒng)需要用到的技術(shù)和環(huán)境,本人已經(jīng)較為熟練的掌握和配備,因此是完全可以實操的2.4數(shù)據(jù)流程本系統(tǒng)根據(jù)功能需求分析,對程序的數(shù)據(jù)流程,主要以逐層細化的方法進行分析,具體分化的數(shù)據(jù)流圖如以下所示。(1)0層圖在系統(tǒng)展示頁面進行填寫后,進行表單提交,頁面將填寫在表單內(nèi)的詳細信息通過參數(shù)的形式傳遞給后臺代碼來驗證相關(guān)的數(shù)據(jù),普通用戶上傳個人信息和發(fā)表評論,系統(tǒng)將展示作品給予閱讀,成為作者的用戶額外的可以向系統(tǒng)上傳作品,然后得到系統(tǒng)的信息反饋,管理員則審核和管理信息。圖2.30層圖(2)1層圖圖2.41層圖

2.5本章小結(jié)本章在總體上對系統(tǒng)的需求分析和可行性分析進行了闡述。需求分析主要對用戶和管理員兩個角色和數(shù)據(jù)流程進行了分析。可行性分析主要是經(jīng)濟可行性、操作可行性與技術(shù)可行性。本章內(nèi)容是系統(tǒng)開發(fā)前的準備工作,側(cè)重于系統(tǒng)業(yè)務(wù)全過程的角度,為系統(tǒng)的開發(fā)者提供判斷依據(jù)以及系統(tǒng)的方案。第3章系統(tǒng)總體設(shè)計3系統(tǒng)總體設(shè)計在上一章中對系統(tǒng)進行了需求分析并確立了系統(tǒng)設(shè)計的目標。根據(jù)設(shè)計目標設(shè)計系統(tǒng)的總體架構(gòu),并對整個系統(tǒng)進行可行性分析,得出系統(tǒng)是可行性的結(jié)論。在本章中將對系統(tǒng)進行詳細的設(shè)計與實現(xiàn)。3.1系統(tǒng)總體架構(gòu)設(shè)計系統(tǒng)采用SpringBoot框架作為系統(tǒng)的整體架構(gòu),系統(tǒng)后臺數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫,本系統(tǒng)是一個B/S的系統(tǒng),為了使數(shù)據(jù)庫、需求業(yè)務(wù)處理以及用戶界面之間能夠關(guān)聯(lián)而不產(chǎn)生依賴性,決定采用模塊分層設(shè)計的方式。采用的三層體系結(jié)構(gòu),在客戶端與數(shù)據(jù)庫之間加入了組件層作為“中間層”。這樣的結(jié)構(gòu)有利于對本系統(tǒng)的維護,避免了相互依賴。圖3.1系統(tǒng)分層結(jié)構(gòu)圖3.2功能模塊設(shè)計本系統(tǒng)主要結(jié)構(gòu)如圖4.2所示,本系統(tǒng)主要分為六個主體模塊,分別為:用戶登錄注冊模塊,網(wǎng)文模塊,書評模塊,首頁推送模塊,個人信息管理模塊和上傳作品功能。在個子模塊下又分出子模塊和子子模塊。在用戶登錄注冊模塊下分有用戶登錄和用戶注冊網(wǎng)文模塊有分為三大功能,分別是給作品打分,閱讀作品和搜索作品,其中閱讀作品又有收藏作品的功能,在書評模塊里分為進行書評,瀏覽書評和管理書評,進行書評又分為評論書評和點贊書評,評論書評下面又包含回復(fù)評論。首頁推薦模塊功能是首頁推薦作品,個人信息管理模塊分為修改個人信息和查看書蟲等級,上傳作品功能就是上傳自己寫的作品。圖3.2功能模塊圖3.3數(shù)據(jù)庫設(shè)計3.3.1數(shù)據(jù)庫實體設(shè)計本系統(tǒng)實體主要為用戶實體、作者實體、作品實體、評論實體、管理員實體。在本系統(tǒng)中,用戶和作品實體是多對多關(guān)系,同一個用戶可以查看不同的作品,不同的用戶也可以閱讀同一個作品;作者和作品是單對多的關(guān)系,一個作者可以創(chuàng)建多個作品,一個作品只能有唯一的一個用戶創(chuàng)建上傳;用戶和評價實體是多對多關(guān)系,同一個用戶可以查看不同的書評,不同的用戶也可以查看相同的一個評價;作品和評價實體是單對多關(guān)系,同一個作品可以擁有許多不同的評價,不同的評價不一定屬于同一個作品。圖3.3展示了這些主要的實體和相關(guān)聯(lián)系。圖3.3系統(tǒng)總E-R模型圖3.3.2數(shù)據(jù)庫表設(shè)計本系統(tǒng)數(shù)據(jù)庫采用云數(shù)據(jù)庫,數(shù)據(jù)表如下:用戶信息實體有狀態(tài)、昵稱、地址、性別、頭像密碼、評論。用戶信息實體圖如下圖圖3.4用戶E-R模型圖用戶表,用于存儲用戶信息。表3.1用戶表user表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空_idBIGINT19.0否usernameVARCHAR50否passwordVARCHAR100否nick-nameVARCHAR50是user-photoVARCHAR100是user-sexTINYINT1是account_balanceBIGINT19.0否statusTINYINT1否create-timeDATETIME/否update-timeDATETIME/否作者實體有筆名、邀請碼、郵箱、創(chuàng)建時間、手機號、作品方向。作者實體圖如下圖圖3.6作者E-R模型圖作者表,用于存儲作者相關(guān)信息。表3.2作者表author表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空_idBIGINT19.0否續(xù)表3.2作者表user-idBIGINT19.0是invite_codeVARCHAR20否pen_nameVARCHAR20否tel_phoneVARCHAR20否chat_accountVARCHAR50否emailVARCHAR50否work_directionTINYINT3.0是statusTINYINT3,0是create_timeDATETIME\是評論信息實體有狀態(tài)、評論數(shù)量、內(nèi)容、評論時間、評論用戶。評論信息實體圖如下圖圖3.8評價E-R模型圖評價表,用于存儲用戶評價。表3.3評價表comments表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空_idChar24否openIdVarchar/否orderDetailsObject/否restaurantDetailsObject/否commentInfoVachar/否imgListArray/是restaurantIdChar24否timeVachar/否作品實體有點擊量、標簽、作者、封面、內(nèi)容、摘要、所屬分類等。作品信息實體圖如下圖圖3.10作品E-R模型圖作品表,用于存儲作品信息。表3.4作品表Books表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空_idChar24否openIdVarchar/否chooseGoodsListArray/否chooseRestaurantChar24否order_addressObject/否totalPriceInt4否timeVachar/否payStateInt4否commentStateInt4否completeStateInt4否psVarchar/是管理員實體有賬號,密碼,權(quán)限,編號等。管理員實體圖如下圖:圖3.11管理員E-R模型圖管理員表,用來存儲管理員信息。System表結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否允許為空_idCHAR24否nameVARCHAR/否module_nameVARCHAR/否attr_nameVARCHAR/否perm_codeVARCHAR/否order_nameVARCHAR/是gmt_createDATETIME24否timeDATETIME/否3.4接口設(shè)計本系統(tǒng)包括以下接口,如下所示:(1)/comment/insert添加評論(2)/comment/all查詢所有評論(3)/comment/ban封禁書評(4)/book/upload上傳作品(5)/book/ban下架作品(6)/password/insert修改密碼(7)/label/insert添加訪問歷史(8)/user/register用戶注冊(9)/user/ban用戶封禁(10)/user/login用戶登錄(11)/read/history用戶閱讀歷史(12)/order/pay支付3.4本章小結(jié)在本章中主要進行了系統(tǒng)的需求分析,并對系統(tǒng)的各個模塊進行了詳細設(shè)計。通過E-R圖的形式了解到該系統(tǒng)不同實體之間的關(guān)系,通過功能模塊圖了解到該系統(tǒng)的主要模塊的主要功能,然后通過數(shù)據(jù)庫表的設(shè)計對各個數(shù)據(jù)庫的字段、類型、長度等進行設(shè)計,最終通過接口設(shè)計了解該系統(tǒng)的相關(guān)接口。第4章系統(tǒng)詳細設(shè)計4系統(tǒng)詳細設(shè)計4.1對象設(shè)計類圖顯示了模型中存在的類、類中的內(nèi)容以及類與類之間的關(guān)系。如圖4.1所示。圖4.1類圖4.2系統(tǒng)功能模塊詳細設(shè)計本章主要介紹了系統(tǒng)的各個功能模塊的詳細設(shè)計。主要包括了用戶登錄注冊模塊,上傳功能模塊,書評模塊,閱讀網(wǎng)文模塊,個人信息管理模塊,和首頁推薦模塊。4.2.1用戶登錄注冊模塊注冊登錄模塊為用戶首先要使用的功能,其他功能的實現(xiàn)都基于用戶登錄的基礎(chǔ)上,系統(tǒng)首先需要判斷用戶是否登錄,若用戶已有賬號則可直接進行登錄,并且可以滿足人臉識別登錄方便又便捷所有的密碼保存采用加密保存,加密內(nèi)容不可逆,滿足了登錄的信息安全,登錄時采用對密碼相同的加密進行比對。若無賬號則需要進行注冊后再進行登錄,處理流程如圖4.2所示:圖4.2用戶登錄注冊流程圖4.2.2上傳功能用戶若不處于登錄狀態(tài)下,則會先跳轉(zhuǎn)到登錄界面進行登錄,如果未注冊,則先進行注冊。登錄成功后,用戶可以上傳自己所創(chuàng)作的作品,作品會先進行審核,只有審核不通會提示失敗給上傳者,當(dāng)管理員審核通過后收集讀者意見進行再次審核,審核失敗則反饋給作者,作者修改成功后復(fù)審,復(fù)審達標通過后書籍進入文章庫,再發(fā)表到系統(tǒng)中,具體流程如圖4.3所示:圖4.3上傳作品流程圖4.2.3書評模塊用戶若不處于登錄狀態(tài)下,則會先跳轉(zhuǎn)到登錄界面進行登錄,如果未注冊,則先進行注冊。登錄成功后,用戶滿足一定的等級可以評論或者點贊水平,發(fā)布評論需要滿足閱讀一定的章節(jié)數(shù)目來確保不是惡意刷評,所有發(fā)出的評論和書評都會進行審核以確保網(wǎng)絡(luò)文明,在未登錄情況下允許查看和書評。處理流程如圖4.4所示:圖4.4書評模塊流程圖4.2.4閱讀網(wǎng)文模塊功能網(wǎng)文模塊是對網(wǎng)文進行交互,用戶若不處于登錄狀態(tài)下,則會先跳轉(zhuǎn)到登錄界面進行登錄,如果未注冊,則先進行注冊。登錄成功后,使用戶可以閱讀或者搜索自己想要閱讀的作品,同時關(guān)注喜愛的作者和收藏未讀完的作品,閱讀功能如圖4.5所示:圖4.5查看書籍流程圖4.2.5個人信息管理模塊管理個人信息,對個人昵稱或者頭像進行修改,或者修改登錄密碼,只有登錄的賬戶才能修改個人信息,系統(tǒng)會先判斷用戶是否登錄,若未登錄則跳轉(zhuǎn)至登錄界面,若已經(jīng)登錄則允許用戶點擊個人信息進入個人信息板塊,用戶修改信息需上傳相關(guān)信息,如頭像圖片,昵稱或者性別,由系統(tǒng)進行審核判定,審核未通過則提示修改錯誤,審核通過,則提示修改成功并跳轉(zhuǎn)至個人信息頁面,具體如圖4.6所示:圖4.6個人信息管理流程圖4.2.6首頁推薦首頁推薦采用了協(xié)同過濾算法和智能標簽聯(lián)合智能推送,每一本作品都有屬于自己的標簽分類,分類不一定唯一,運用基于用戶的協(xié)同過濾尋找到與使用者相似度最相近的用戶并抓取該用戶的書單,這里所使用的是皮爾遜相關(guān)系數(shù)和余弦相關(guān)系數(shù)相結(jié)合的計算方法,在進行基于物品的協(xié)同過濾對這些作品進行一個使用者的內(nèi)心期望擬打分,找到最可能符合使用者口味的書籍,并推送在首頁上。流程圖如4.7所示:圖4.7首頁推薦4.3交互設(shè)計4.3.1用戶登錄注冊模塊時序圖用戶如果沒有賬號則進行賬號注冊,進入注冊頁遞交注冊信息,然后連接數(shù)據(jù)庫,校驗數(shù)據(jù)庫里存有的用戶表,若賬號不重復(fù)則遞進到檢驗身份信息,反之注冊失效,身份信息檢驗通過即賬號注冊成功同時將賬號信息存入數(shù)據(jù)庫。當(dāng)用戶登錄時,輸入自己的賬號信息,信息反饋到數(shù)據(jù)庫進行驗證,驗證成功則登錄進系統(tǒng),反之跳轉(zhuǎn)失敗頁面,用戶登錄模塊時序圖如圖4.8所示。圖4.8用戶登錄注冊模塊時序圖4.3.2上傳功能模塊時序圖用戶可以通過填寫邀請碼獲得上傳自己創(chuàng)作的作品的權(quán)限,首先創(chuàng)作完自己的作品后,在作品頁面提交審核,管理員通過審核后,遞進要用戶審核組審核,最終審核通過后數(shù)據(jù)庫進行更新,上傳功能模塊時序圖如圖4.9所示。圖4.9上傳功能模塊時序圖4.3.3書評模塊時序圖用戶可以對作品進行書評,首先獲取用戶的書蟲等級,等級達標后進行書評,反之評論失敗。用戶發(fā)表完書評后,由管理員審核評論,若審核未通過則用戶評論失敗。書評模塊時序圖如圖4.10所示。圖4.10書評模塊時序圖4.3.4閱讀網(wǎng)文模塊時序圖用戶通過搜索或者點擊首頁推送的方式獲取書籍信息,點擊后會核對需要閱讀書籍信息,然后后跳轉(zhuǎn)至?xí)喿x頁面,將書籍內(nèi)容結(jié)果反饋給用戶。閱讀網(wǎng)文模塊時序圖如圖4.11所示。圖4.11閱讀網(wǎng)文模塊時序圖4.3.5個人信息管理模塊時序圖當(dāng)用戶處于登錄狀態(tài)時,可以更改自己的個人信息,系統(tǒng)會在數(shù)據(jù)庫里獲取個人信息展示給用戶,用戶提交修改申請,系統(tǒng)判斷修改完格式是否合規(guī),或符合規(guī)定則修改并存入數(shù)據(jù)庫。個人信息管理模塊時序圖如圖4.12所示。圖4.12個人信息管理模塊時序圖第5章系統(tǒng)功能實現(xiàn)5系統(tǒng)功能實現(xiàn)5.1功能模塊實現(xiàn)5.1.1登錄注冊模塊的設(shè)計與實現(xiàn)系統(tǒng)的注冊登錄功能,需要進入登錄界面login.HTML,然后通過<a.id="create".href="javascript:;".class="link">的標簽鏈接到注冊頁面,進入注冊頁面后需要根據(jù)頁面文本框提示的手機號,密碼,驗證碼等必填信息,當(dāng)信息填寫完畢后,用戶點擊注冊按鈕,用戶通過$("#create").click(function.()方法將注冊用戶的參數(shù)member-add傳遞至后臺調(diào)用mv.setViewName("member-add")方法,最后依據(jù)UserDao.XML文件執(zhí)行insert語句,即可注冊成功,界面如5.1所示:圖5.1注冊界面當(dāng)在登錄界面文本框內(nèi)填入正確數(shù)據(jù)信息。然后點擊登錄按鈕,即可進入網(wǎng)站主頁,登錄實現(xiàn)流程是,首先在login.html頁面input文本框內(nèi)填入用戶名密碼等數(shù)據(jù)信息,然后通過form.on('submit(login)',.function()表單提交的方法進行l(wèi)oginchecks登錄參數(shù)驗證,Java代碼中的controller層通過@RequestMapping("loginchecks")獲取信息之后user.setUpassword(Upassword);user.setUsername(Username)對用戶名及密碼驗證匹配,主要是通過service接口去調(diào)用userService.SelectUPw(user)實體類中查詢對應(yīng)的用戶是否存在,根據(jù)登錄信息Role.role.=.userService.checkRole(uid)獲取到登錄用戶的編號,判斷其角色范圍,最后接口層service調(diào)用dao層中配置文件XML的checkRole參數(shù),驗證成功即可登錄。管理員登錄同理,實現(xiàn)界面如圖5.2所示:圖5.2登錄界面圖5.3管理員登錄界面5.1.2上傳功能模塊的設(shè)計與實現(xiàn)本模塊實現(xiàn)的流程是,用戶在作家專區(qū)文本框內(nèi)填寫完內(nèi)容,然后點擊上傳功能,請求的參數(shù)通過book_setting向Java后臺進去傳遞請求,后臺代碼通過@RequestMapping("book")獲取到請求的參數(shù)信息,然后調(diào)用bookService.addBook(book),根據(jù)接口層public.Boolean.Booksetting(Book.book)的方法去進行數(shù)據(jù)庫持久層的調(diào)用,最后將數(shù)據(jù)通過insert進行插入。界面如5.3所示:圖5.3上傳功能界面5.1.3書評模塊的設(shè)計與實現(xiàn)用戶可以對作品進行評論、回復(fù)作品下的書評,其中評論是通過點擊評論區(qū)頁面的文本框編輯文字,點擊發(fā)表按鈕,然后頁面接受編輯請求,請求的參數(shù)通過BookComment向后臺進去傳遞請求,后臺代碼通過@RequestMapping("BookComment")獲取到請求的參數(shù)信息,然后調(diào)用cabinService.SelectCabinId(id)方法獲取到被編輯的對象的唯一標識ID,從而調(diào)用dao層操作數(shù)據(jù)庫對信息執(zhí)行update操作,最后將數(shù)據(jù)返回頁面。界面如圖5.4所示:圖5.4書評界面5.1.4閱讀網(wǎng)文模塊的設(shè)計與實現(xiàn)當(dāng)用戶遇到想要閱讀的作品時,點擊作品名稱跳轉(zhuǎn)至章節(jié),點擊相關(guān)章節(jié)進行觀看。本模塊實現(xiàn)的流程是,用戶在首頁點擊相關(guān)作品,頁面Front接受用戶請求然后根據(jù)<the:block.the:text="${book.title}"></the:block>標簽獲取到請求的新聞的參數(shù)數(shù)據(jù),然后根據(jù)List集合將數(shù)據(jù)信息進行分頁展示出來,調(diào)用List<Notice>.notices.=.noticeService.SelectNotice3(notice,.pageNum,.pageSize)方法即可獲取數(shù)據(jù)庫中的新聞存儲數(shù)據(jù),通過return返回值給頁面FrontBook.html。界面如圖5.5圖5.6所示:圖5.5章節(jié)頁面圖5.6閱讀頁面5.1.5個人信息管理模塊的設(shè)計與實現(xiàn)用戶可以進行修改個人信息,其中修改是通過點擊相關(guān)信息,然后頁面接受編輯請求,跳轉(zhuǎn)到edituser.html頁面,然后對用戶的用戶名、姓名、密碼、性別、郵箱、手機號等數(shù)據(jù)信息進行修改,修改完成后點擊修改按鈕,請求的參數(shù)通過edituser想后臺進去傳遞請求,后臺代碼通過@RequestMapping("edituser")獲取到請求的參數(shù)信息,然后調(diào)用User.user.=.userService.SelectUserId(id)方法獲取到被編輯的用戶的唯一標識ID,從而調(diào)用dao層操作數(shù)據(jù)庫對用戶進行update。界面實現(xiàn)如圖5.7所示:圖5.7個人信息界面5.1.6首頁推薦的設(shè)計與實現(xiàn)首頁推薦模塊,主要是通過協(xié)同過濾算法來在給定的username的情況下,起算其他用戶和他的距離并排序推薦,包含了用戶喜好點擊網(wǎng)文的內(nèi)容。實現(xiàn)流程主要是通過前端頁面FrontBook.html進行展示。在devTools中算出用戶相關(guān)皮爾遜系數(shù),然后根據(jù)List<User>recommend(Stringusername,List<User>users)獲取用戶最近鄰域,根據(jù)<tdth:text="${FrontB}">標簽獲取到詳細的服務(wù)數(shù)據(jù),根據(jù)標簽<td.th:text="${FrontBook.address}">獲取到對應(yīng)服務(wù)的詳細地址,實現(xiàn)界面如圖5.8所示:第6章系統(tǒng)測試圖5.8首頁界面5.1.7管理功能模塊設(shè)計與實現(xiàn)管理員進入登錄界面,在登錄界面文本框內(nèi)填入正確數(shù)據(jù)信息。然后點擊登錄按鈕,即可進入網(wǎng)站主頁,登錄實現(xiàn)流程是,首先在login.html頁面input文本框內(nèi)填入用戶名密碼驗證碼等數(shù)據(jù)信息,然后通過form.on('submit(login)',.function()表單提交的方法進行l(wèi)oginchecks登錄參數(shù)驗證,Java代碼中的controller層通過@RequestMapping("loginchecks")獲取到值之后user.setUpassword(Upassword);user.setUsername(Username)對用戶名及密碼記性驗證匹配,主要是通過service接口去調(diào)用userService.SelectUPw(user)實體類中查詢對應(yīng)的用戶是否存在,根據(jù)登錄信息Role.role.=.userService.checkRole(uid)獲取到登錄用戶的角色編號,判斷其角色范圍,最后接口層service調(diào)用dao層中配置文件XML的checkRole參數(shù),驗證成功即可登錄。登錄成功后,進入超級管理員中心,在左方導(dǎo)航處點擊會員管理功能。界面實現(xiàn)如圖5.9所示:圖5.9管理模塊頁面第6章系統(tǒng)測試6系統(tǒng)測試6.1測試計劃本次測試使用的電腦為64位操作系統(tǒng),為Windows10專業(yè)版,處理器為Intel(R)Core(TM)i7-10750HCPU@2.60GHz(12CPUs),~2.6GHz,內(nèi)存為16G,JDK為1.8,顯卡為NVIDIAGeForceRTX2060。安裝IDEA、MySQL等軟件,啟動項目,在網(wǎng)頁端對用戶登錄注冊、用戶閱讀網(wǎng)文、用戶書評等模塊、管理員封禁用戶、管理員管理書評、管理員審核作品等功能進行測試,系統(tǒng)信息維護等進行功能測試。非功能測試是對該系統(tǒng)進行安全性的測試和兼容性的測試,以便達到用戶的要求。6.2測試方法本程序選用的測試方法為黑盒測試,黑盒測試的主要步驟是將整個程序看作是一個匣子,在測試過程中無需考慮外部因素的影響,如,網(wǎng)絡(luò),電腦卡頓等問題,只需慎重對程序?qū)崿F(xiàn)的功能進行測試。6.3功能用例6.3.1登錄功能測試測試用例名稱:登錄目的:測試是否可以登錄內(nèi)容:文本框內(nèi)內(nèi)容輸入,檢驗注冊信息合法性,界面是否有相關(guān)提示。.表6.1登錄用例測試結(jié)果表。用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果A01用戶登錄進入用戶登錄界面1.輸入用戶賬號密碼(人臉識別)2.點擊登錄用戶登錄成功,進入網(wǎng)站首頁用戶登錄成功,進入網(wǎng)站首頁A02管理員登錄進入管理員登錄界面輸入管理員賬號密碼點擊登錄管理員登錄成功,進入管理員界面管理員登錄成功,進入管理員界面賬號密碼錯誤導(dǎo)致登錄錯誤,測試圖如下所示:圖6.1賬號密碼錯誤測試圖6.3.2書評功能測試測試用例名稱:書評目的:測試是否可以正常評價書籍內(nèi)容:界面操作表6.2書評功能用例測試結(jié)果表用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果B01評論作品用戶登錄成功后進行閱讀作品操作1.點擊作品標題2.閱讀作品3.點擊評論按鈕4.點擊評論框5.輸入評論內(nèi)容6.點擊提交發(fā)布評論成功,刷新該界面后底部評論區(qū)會出現(xiàn)發(fā)布的評論評論成功,刷新該界面后底部評論區(qū)后出現(xiàn)發(fā)布的評論B02回復(fù)他人評論1.點擊作品2.閱讀作品3.點擊他人評論中的回復(fù)按鈕4.點擊評論框、5輸入評論內(nèi)容6.點擊提交發(fā)布回復(fù)他人評論成功,刷新該界面后底部評論區(qū)出現(xiàn)回復(fù)他人評論的評論回復(fù)他人成功,刷新該界面后底部評論區(qū)出現(xiàn)回復(fù)他人評論的評論B03撤銷評論1.點擊作品標題2.閱讀作品3.點擊評論區(qū)撤銷按鈕撤銷成功,刷新該界面后底部評論區(qū)的評論被刪除撤銷成功,刷新該界面后底部評論區(qū)的評論被刪除未登錄無法評論書籍,測試圖如下所示:圖6.2評論失敗測試圖6.3.3個人信息管理測試測試用例名稱:個人信息管理目的:測試用戶是否對個人信息進行修改內(nèi)容:界面操作。表6.3個人信息管理用例測試結(jié)果表用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果C01修改密碼管理員成功登錄1.點擊個人中心2.點擊選擇密碼修改3.輸入新的密碼4.點擊確定密碼修改成功,管理員可以通過新密碼進行登錄密碼修改成功,管理員可以通過新密碼進行登錄C02修改頭像1.點擊個人中心2.選擇頭像修改3.選擇新頭像上傳4.點擊確定網(wǎng)站在刷新后頭像變成新修改的頭像網(wǎng)站在刷新后頭像變成新修改的頭像C03修改郵箱1.點擊個人中心2.選擇密碼修改3.輸入新郵箱賬號4.點擊確定網(wǎng)站在刷新后郵箱信息變成新修改的郵箱網(wǎng)站在刷新后郵箱信息變成新修改的郵箱6.3.4網(wǎng)文綜合測試測試用例名稱:網(wǎng)文綜合功能目的:測試用戶是否可以正確搜索到相關(guān)作品,正確閱讀相關(guān)作品等功能內(nèi)容:界面操作。表6.4網(wǎng)文綜合功能用例測試結(jié)果表用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果D01關(guān)鍵字搜索用戶登錄成功后進行網(wǎng)文搜索操作1.點擊搜索圖標,在搜索框輸入關(guān)鍵字2.點擊搜索成功搜索到對應(yīng)網(wǎng)文,進行點擊閱讀成功搜索到對應(yīng)網(wǎng)文,進行點擊查看D02基于標簽搜索1.點擊搜索圖標,在搜索框下面選擇標簽2.點擊搜索成功搜索到對應(yīng)網(wǎng)文,進行點擊查看成功搜索到對應(yīng)網(wǎng)文,進行點擊查看D03收藏網(wǎng)文用戶閱讀網(wǎng)文點擊收藏按鈕書籍成功被收藏在書架里書籍成功被收藏在書架里D04閱讀網(wǎng)文用戶登錄點擊相應(yīng)章節(jié)進行閱讀正確展示章節(jié)內(nèi)容正確展示章節(jié)內(nèi)容6.3.5首頁推薦功能測試測試用例名稱:首頁推薦目的:測試用戶能夠在首頁看到相關(guān)的個性化推薦作品內(nèi)容:界面操作表6.5首頁推薦功能用例測試結(jié)果表用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果E01個性化推薦用戶登錄成功后進入網(wǎng)站首頁1.選擇一類網(wǎng)文2.閱讀這一類的網(wǎng)文3.點擊網(wǎng)站推薦網(wǎng)站首頁在刷新之后推薦的網(wǎng)文變成該類型的網(wǎng)文網(wǎng)站首頁在刷新之后推薦的網(wǎng)文變成該類型的網(wǎng)文獻E02個性化推薦用戶登錄成功后進入網(wǎng)站首頁選擇一本網(wǎng)文2.收藏該網(wǎng)文作品3.點擊網(wǎng)站推薦網(wǎng)站首頁在刷新之后推薦的網(wǎng)文變成該類型的網(wǎng)文網(wǎng)站首頁在刷新之后推薦的網(wǎng)文變成該類型的網(wǎng)文6.3.6上傳功能測試測試用例名稱:上傳作品目的:用戶能成功上傳作品,并在系統(tǒng)內(nèi)能搜索到內(nèi)容:界面操作表6.6上傳功能用例測試結(jié)果圖用例編號測試內(nèi)容前置條件測試步驟預(yù)期結(jié)果實際結(jié)果F01新建作品用戶成功登錄并且邀請碼驗證成功1.點擊文作品理2.點擊選擇新增按鈕3.輸入新的網(wǎng)文名稱4.點擊提交確定作品管理新增作品作品管理新增作品F02新建章節(jié)1.點擊作品管理2.點擊進入作品3.新建章節(jié)內(nèi)容4.點擊上傳作品章節(jié)內(nèi)容更新作品章節(jié)內(nèi)容更新F03修改內(nèi)容1.點擊作品管理2.點擊進入作品3.修改章節(jié)內(nèi)容4.點擊上傳作品章節(jié)內(nèi)容被修改作品章節(jié)內(nèi)容被修改6.4非功能測試(1)安全性測試安全性測試可以對程序的危險處理和危險防止進行測試。用戶的密碼不可見不可復(fù)制,系統(tǒng)中明確區(qū)分用戶和管理員的權(quán)限,不會因權(quán)限改變造成混亂。系統(tǒng)數(shù)據(jù)完整、易于管理、有良好的獨立性,可備份不可恢復(fù)。(2)兼容性測試該系統(tǒng)在管理員、用戶使用的網(wǎng)頁界面可以匹配不同的瀏覽器和電腦型號,未出現(xiàn)屏幕顯示不全或顯示出錯的情況。表6.4兼容性測試電腦型號/電腦瀏覽器類型顯示情況360極速瀏覽器正常Uc瀏覽器正常小米筆記本電腦正常華碩電腦正常(3)性能測試第7章總結(jié)與展望系統(tǒng)的性能測試主要是通過測試網(wǎng)站響應(yīng)時間來反映出系統(tǒng)性能情況。主要情況如下圖搜索。1、首頁登錄測試系統(tǒng)的首頁登錄相應(yīng)時間在400ms以內(nèi)。首頁登錄測試圖如圖6.3所示。圖6.3首頁登錄測試圖(2)搜索測試用戶在首頁進行搜索的系統(tǒng)響應(yīng)時間在200ms以內(nèi)。搜索測試圖如圖6.4所示。圖6.4搜索測試圖第6章系統(tǒng)測試6.3本章小結(jié)本章主要對系統(tǒng)進行了軟件測試,整個測試流程我分為了功能測試以及非功能測實,功能測試中我給出了基本操作流程以及測試的結(jié)構(gòu),可以看出系統(tǒng)基本上是通過了這些測試。在非功能測試中,我這邊主要就是測試了系統(tǒng)在運行時的相應(yīng)時間以此來反應(yīng)系統(tǒng)的性能,可以看出系統(tǒng)也是達到了預(yù)期標準。第7章總結(jié)與展望第7章總結(jié)與展望7總結(jié)與展望隨著社會和經(jīng)濟的迅速發(fā)展,國民的消費方式和生活水平在不斷的改變,信息獲取方式也因此而大有可為。信息化發(fā)展迅速,不僅使人民的精神生活得到了極大的改善,而且還使我國的綜合國力得到了增強。但也存在很多不足。國民需要找到精神壓力緩解的方法,結(jié)合互聯(lián)網(wǎng)和智能推薦的方法,本系統(tǒng)應(yīng)運而生。本文前端使用的是vue框架,主要是以JS、CSS、HTML5等語言為主,數(shù)據(jù)儲存使用MySQL數(shù)據(jù)庫技術(shù)。后臺采用Java語言,提供支持后臺開發(fā)的工具是InteliJIDEA,通過Mybatits相關(guān)的技術(shù)使得服務(wù)器tomcat和MySQL5.7數(shù)據(jù)庫進行相關(guān)的交互,通過配置信息的設(shè)置,對應(yīng)的鏈接系統(tǒng)數(shù)據(jù)庫,實現(xiàn)對數(shù)據(jù)庫的操作,這樣才能確保數(shù)據(jù)的高效和穩(wěn)定。論文的主要內(nèi)容:(1)首先對傳統(tǒng)網(wǎng)文中的問題進行了剖析,在互聯(lián)網(wǎng)大背景下調(diào)研了此課題的目的和意義以及國內(nèi)外的現(xiàn)狀,并對該系統(tǒng)所需的一系列關(guān)鍵技術(shù)進行了論述。(2)針對我國網(wǎng)文發(fā)展中的一些問題,本文對該系統(tǒng)進行了整體的需求分析。在此基礎(chǔ)上,對系統(tǒng)的技術(shù)架構(gòu)、數(shù)據(jù)庫、功能模塊進行了設(shè)計,并對后臺管理和前端軟件的具體功能進行了詳細的設(shè)計。(3)系統(tǒng)采用Java語言作為后臺接口提供支持,前端使用bootstrap技術(shù)來實現(xiàn)對應(yīng)的新聞頁面,數(shù)據(jù)儲存使用MySQL數(shù)據(jù)庫技術(shù)。最終的測試結(jié)果證明了系統(tǒng)具有可行性。在這個互聯(lián)網(wǎng)時代,瞬息萬變的技術(shù)將會讓新聞網(wǎng)站有著更好的發(fā)展。本文主要采用Java語言、Mysql數(shù)據(jù)庫、SSM框架以及Maven倉庫,設(shè)計并實現(xiàn)了基于Java新聞管理系統(tǒng),其包括前端和后臺管理。該系統(tǒng)的測試結(jié)果是可行的,但是存在以下問題還有待改進:(1)安全問題:用戶的身份信息。若用戶個人信息被盜,可能會對用戶造成惡劣的影響。所以在以后的系統(tǒng)設(shè)計中,需要對信息進行多次加密操作,以保證系統(tǒng)的安全可靠性。(2)系統(tǒng)性能:網(wǎng)站用戶人數(shù)眾多,會導(dǎo)致網(wǎng)站所產(chǎn)生的實時數(shù)據(jù)量較大,從而影響系統(tǒng)的性能。對此需要對服務(wù)器做進一步優(yōu)化和對數(shù)據(jù)庫進行設(shè)計。而對于我來說這次的畢業(yè)設(shè)計不僅僅是一份通往社會的入場券,更是一份對我這四年大學(xué)生涯的總結(jié),是對我所學(xué)所知的總結(jié)和歸納,希望以后的我能夠更加成熟能在專業(yè)技能上更加精進,希望我回首這四年,所想到的是老師的諄諄教誨,是埋頭伏案熬夜改論文的我,這些都是踏入社會之后而更加珍貴的記憶。參考文獻參考文獻[1]董文濤,李卓,陳昕.基于聯(lián)邦學(xué)習(xí)的在線短視頻內(nèi)容分發(fā)策略0.計算機應(yīng)用,2021,41(6):1551-1556.[2]肖夢涯.推薦算法+短視頻:非遺營銷組合創(chuàng)新叨﹒貴州社會科學(xué),2021(2):141-147.[3]冷亞軍,陸青,梁昌勇.協(xié)同過濾推薦技術(shù)綜述叨﹒模式識別與人工智能,2014,27(8):720-734.[4]黃立威,江碧濤,呂守業(yè),等.基于深度學(xué)習(xí)的推薦系統(tǒng)研究綜述﹒計算機學(xué)報,2018,41(7):1619-1647.[5]趙文濤,任行學(xué).融合標簽信息和時間效應(yīng)的矩陣分解推薦算法.信息與控制,2020,49(4):472-477,488.[6]郭娣,趙海燕.融合標簽流行度和時間權(quán)重的矩陣分解推薦算法0﹒小型微型計算機系統(tǒng),2016,37(2):293-297.[7]齊德法,徐連誠,朱振方.融合協(xié)同過濾的XGBoost推薦算法0﹒計算機應(yīng)用研究,2020,37(5):1317-1320.[8]苑寧萍,辛力堅,王呼生,等.融合用戶興趣度和信任度的協(xié)同過濾推薦算法叨.計算機工程與設(shè)計,2020,41(7):1967-1974.[9]WangRQ,ChengHK,JiangYL,etal.AnovelmatrixfactorizationmodelforrecommendationwithLOD-basedse-manticsimilaritymeasure.ExpertSystemswithApplica-tions,2019,123:70-81.[10]董立巖,王越群,賀嘉楠,等.基于時間衰減的協(xié)同過濾推薦算法加﹒吉林大學(xué)學(xué)報(工學(xué)版),2017,47(4):1268-1272.[11]石鴻暖,孫天昊,李雙慶,等.融合時間和類型特征加權(quán)的矩陣分解推薦算法0.重慶大學(xué)學(xué)報,2019,42(1):83-91.[12]林筠超,萬源.基于圖結(jié)構(gòu)優(yōu)化的自適應(yīng)多度量非監(jiān)督特征選擇方法0﹒計算機應(yīng)用,2021,41(5):1282-1289.[13]鈕暖暖,程國振,齊超,等.基于遺忘曲線的用戶影響力時效性度量方法0﹒計算機應(yīng)用,2017,37(S1):18-22.[14]陳思,田敬陽.基于協(xié)同過濾算法的旅游景點推薦模型研究0.現(xiàn)代電子技術(shù),2020,43(11):132-135.[l5]劉治綱,肖慶匯,丁雪非,等.軟件定義網(wǎng)絡(luò)用戶動態(tài)訪問控制模型仿真0.計算機仿真,2019,36(1):308-311+396.

致謝附錄附錄前端首頁核心代碼publicStringindex(Modelmodel){CompletableFuture<Map<Byte,List<BookSettingVO>>>bookCompletableFuture=CompletableFuture.supplyAsync(bookService::listBookSettingVO,threadPoolExecutor);CompletableFuture<List<News>>newsCompletableFuture=CompletableFuture.supplyAsync(newsService::listIndexNews,threadPoolExecutor);model.addAttribute("bookMap",bookCompletableFuture.get());model.addAttribute("newsList",newsCompletableFuture.get());returnThreadLocalUtil.getTemplateDir()+"index";}@RequestMapping("book/bookclass.html")publicStringbookClass(){return"book/bookclass";}@RequestMapping("book/book_ranking.html")publicStringbookRank(){returnThreadLocalUtil.getTemplateDir()+"book/book_ranking";}@SneakyThrows@RequestMapping("/book/{bookId}.html")publicStringbookDetail(@PathVariable("bookId")LongbookId,Modelmodel){CompletableFuture<Book>bookCompletableFuture=CompletableFuture.supplyAsync(()->{Bookbook=bookService.queryBookDetail(bookId);log.debug("加載小說基本信息線程結(jié)束");returnbook;},threadPoolExecutor);CompletableFuture<PageBean<BookCommentVO>>bookCommentPageBeanCompletableFuture=CompletableFuture.supplyAsync(()->{PageBean<BookCommentVO>bookCommentVOPageBean=bookService.listCommentByPage(null,bookId,1,5);log.debug("加載小說評論列表線程結(jié)束");returnbookCommentVOPageBean;},threadPoolExecutor);CompletableFuture<Long>firstBookIndexIdCompletableFuture=bookCompletableFuture.thenApplyAsync((book)->{if(book.getLastIndexId()!=null){LongfirstBookIndexId=bookService.queryFirstBookIndexId(bookId);log.debug("加載小說基本信息線程結(jié)束");returnfirstBookIndexId;}returnnull;},threadPoolExecutor);CompletableFuture<List<Book>>recBookCompletableFuture=bookCompletableFuture.thenApplyAsync((book)->{List<Book>books=bookService.listRecBookByCatId(book.getCatId());log.debug("加載隨機推薦小說線程結(jié)束");returnbooks;},threadPoolExecutor);model.addAttribute("book",bookCompletableFuture.get());model.addAttribute("firstBookIndexId",firs

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論