版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
畢畢業(yè)論文(小初號(hào)楷體居中) (四號(hào)黑體)題目:springboot校園心聲墻小程序?qū)W院:專業(yè):姓名:學(xué)號(hào):指導(dǎo)教師:年月日PAGE26摘要校園心聲墻小程序的應(yīng)用范圍很廣,很多學(xué)校都會(huì)建立一套具有自己學(xué)校風(fēng)格的心聲墻小程序,來(lái)方便學(xué)校學(xué)生之間的日常聯(lián)系和交流心聲的建立對(duì)學(xué)生之間的信息的傳播,知識(shí)的交流提供了一個(gè)很好的平臺(tái),增加了學(xué)生課余生活的情趣。本校園心聲墻是基于小程序開發(fā)的一套系統(tǒng)。校園心聲墻小程序的主要功能就是方便同學(xué)之間的聯(lián)系,促進(jìn)同窗好友的感情,校園心聲墻小程序系統(tǒng)功能齊全,含有留言,搜索,上傳和后臺(tái)管理等功能。校園心聲墻小程序的設(shè)計(jì)主要是對(duì)系統(tǒng)所要實(shí)現(xiàn)的功能進(jìn)行詳細(xì)考慮,確定所要實(shí)現(xiàn)的功能后進(jìn)行界面的設(shè)計(jì),在這中間還要考慮如何可以更好的將功能及頁(yè)面進(jìn)行很好的結(jié)合,方便用戶可以很容易明了的找到自己所需要的信息,還有系統(tǒng)平臺(tái)后期的可操作性,通過對(duì)信息內(nèi)容的詳細(xì)了解進(jìn)行技術(shù)的開發(fā)。校園心聲墻小程序的開發(fā)利用現(xiàn)有的成熟技術(shù)參考,以源代碼為模板,分析功能調(diào)整與校園心聲墻小程序管理的實(shí)際需求相結(jié)合,討論了基于校園心聲墻小程序管理的使用。關(guān)鍵詞:校園心聲墻小程序;微信小程序;MySQL
AbstractTheapplicationscopeofthecampusvoicewallwidgetisverywide.Manyschoolswillestablishasetofvoicewallwidgetwiththeirownschoolstyletofacilitatethedailycontactandcommunicationbetweenschoolstudents.Theestablishmentofvoiceofmindwillspreadinformationamongstudents.Theexchangeofknowledgewillprovideagoodplatformandincreasetheinterestofstudents'extracurricularlife.Thecampusvoicewallisasystemdevelopedbasedonsmallprograms.Themainfunctionofthecampusvoicewallappletistofacilitatethecontactbetweenstudentsandpromotethefeelingsofclassmatesandfriends.Thecampusvoicewallappletsystemhascompletefunctions,includingmessage,search,uploadandbackgroundmanagementfunctions.Thedesignofthecampusvoicewallappletismainlytoconsiderthefunctionstoberealizedbythesystemindetail,andthentodesigntheinterfaceafterdeterminingthefunctionstoberealized.Inthisprocess,weshouldalsoconsiderhowtobettercombinethefunctionsandpages,sothatuserscaneasilyfindtheinformationtheyneed,aswellastheoperabilityofthesystemplatforminthelaterstage,Developtechnologythroughdetailedunderstandingofinformationcontent.Thedevelopmentofthecampusvoicewallappletusestheexistingmaturetechnologyreference,takesthesourcecodeasthetemplate,analyzesthefunctionadjustmentandtheactualneedsofthecampusvoicewallappletmanagement,anddiscussestheuseofthecampusvoicewallappletmanagement.Keywords:Campusvoicewallwidget;WeChatapplet;MySQL
目錄TOC\o"1-3"\h\z\t"標(biāo)題2,2,標(biāo)題3,3,標(biāo)題4,4,標(biāo)題5,5,標(biāo)題6,6,標(biāo)題7,7,標(biāo)題8,8,標(biāo)題9,9,頁(yè)腳,1,頁(yè)眉,1,列出段落,1,標(biāo)題,1,副標(biāo)題,3,參考文獻(xiàn),1"摘要 1目錄 11引言 11.1課題研究背景 11.2研究現(xiàn)狀 11.3系統(tǒng)的特點(diǎn) 11.4論文結(jié)構(gòu)與章節(jié)安排 22系統(tǒng)需求分析 32.1可行性分析 32.1.1技術(shù)可行性分析 32.1.2操作可行性分析 32.1.3經(jīng)濟(jì)可行性分析 32.2功能需求分析 33系統(tǒng)總體設(shè)計(jì) 63.1系統(tǒng)開發(fā)架構(gòu)的選擇 63.1系統(tǒng)功能模塊設(shè)計(jì) 63.1.1用戶端頁(yè)面設(shè)計(jì) 73.1.2用戶模塊設(shè)計(jì) 73.1.3評(píng)論管理模塊設(shè)計(jì) 83.1.4熱門話題模塊設(shè)計(jì) 83.2數(shù)據(jù)庫(kù)設(shè)計(jì) 93.2.1數(shù)據(jù)庫(kù)概要設(shè)計(jì) 93.2.2數(shù)據(jù)庫(kù)邏輯設(shè)計(jì) 94系統(tǒng)詳細(xì)實(shí)現(xiàn) 144.1用戶端功能實(shí)現(xiàn) 144.1.1網(wǎng)站主頁(yè)功能實(shí)現(xiàn) 144.1.2用戶注冊(cè)登錄功能實(shí)現(xiàn) 144.2.3登錄功能實(shí)現(xiàn) 154.2.4心聲墻功能實(shí)現(xiàn) 164.2.5熱門話題功能實(shí)現(xiàn) 174.2.6我的功能實(shí)現(xiàn) 174.2.7我的功能實(shí)現(xiàn) 184.2管理端功能實(shí)現(xiàn) 194.2.1管理端管理員登錄功能實(shí)現(xiàn) 194.2.2人員管理功能實(shí)現(xiàn) 204.2.3網(wǎng)站管理功能實(shí)現(xiàn) 204.2.4播圖管理界面 214.2.5公告消息界面 214.2.6內(nèi)容管理功能實(shí)現(xiàn) 225系統(tǒng)測(cè)試 235.1軟件測(cè)試的重要性 235.2測(cè)試實(shí)例的研究與選擇 235.3測(cè)試環(huán)境與測(cè)試條件 235.4測(cè)試總結(jié) 24總結(jié) 26參考文獻(xiàn) 27致謝 28學(xué)校學(xué)士學(xué)位論文1引言1.1課題研究背景隨著網(wǎng)絡(luò)時(shí)代的到來(lái),互聯(lián)網(wǎng)的優(yōu)勢(shì)和普及時(shí)刻影響并改變著人們的生活方式。在信息技術(shù)迅速發(fā)展的今天,計(jì)算機(jī)技術(shù)已經(jīng)遍及全球,使社會(huì)發(fā)生了巨大的變革。為了不受時(shí)間和地點(diǎn)的限制,智能手機(jī)用戶可以通過移動(dòng)網(wǎng)絡(luò)訪問網(wǎng)站和處理各種業(yè)務(wù)和互聯(lián)網(wǎng),這是一個(gè)有效的將應(yīng)用系統(tǒng)的功能擴(kuò)展到手機(jī)終端的方法?,F(xiàn)今各種智能手機(jī)層出不窮,各類基于手機(jī)平臺(tái)的軟件應(yīng)運(yùn)而生,其中,在眾多交流軟件中,微信備受人們青睞。近年來(lái),微信發(fā)展規(guī)模越來(lái)越大,越來(lái)越多的人開始使用微信,目前隨著智能手機(jī)系統(tǒng)的普及,人人手機(jī)上基本都有了微信。所以,微信推出小程序廣告支持公眾號(hào)關(guān)注,而這就意味著小程序跟公眾號(hào)之間的通道被徹底打通了。本論文校園心聲墻小程序主要牽扯到的程序,數(shù)據(jù)庫(kù)與計(jì)算機(jī)技術(shù)等。覆蓋知識(shí)面大,可以大大的提高系統(tǒng)人員工作效率。1.2研究現(xiàn)狀隨著社會(huì)的發(fā)展和科學(xué)技術(shù)的進(jìn)步,互聯(lián)網(wǎng)技術(shù)越來(lái)越受歡迎。網(wǎng)絡(luò)傳播的生活方式逐漸受到廣大人民群眾的喜愛。越來(lái)越多的互聯(lián)網(wǎng)愛好者開始在互聯(lián)網(wǎng)上滿足他們的基本需求,同時(shí)逐漸進(jìn)入各個(gè)用戶的生活起居?;ヂ?lián)網(wǎng)具有許多優(yōu)點(diǎn),例如便利性,速度,高效率和低成本。因此,類似于校園心聲墻小程序,滿足用戶工作繁忙的需求,不僅是方便用戶隨時(shí)查看信息的途徑,而且還能提高管理效率。本文首先以校園心聲墻小程序過程的基本問題作為研究對(duì)象。在開發(fā)系統(tǒng)之前,我們對(duì)現(xiàn)有狀況進(jìn)行了詳細(xì)的調(diào)查和分析。最后,我們利用計(jì)算機(jī)技術(shù)開發(fā)了一套完整合適的微信小程序的校園心聲墻。該系統(tǒng)的實(shí)現(xiàn)主要優(yōu)勢(shì)是:該系統(tǒng)主要采用計(jì)算機(jī)技術(shù)開發(fā),它方便快捷;系統(tǒng)可以通過管理員界面查看用戶的所有信息管理。校園心聲墻小程序軟件是一款方便、快捷、實(shí)用的信息服務(wù)查詢軟件。隨著智能網(wǎng)絡(luò)在全球市場(chǎng)的不斷普及以及各種智能平臺(tái)的使用,系統(tǒng)的開發(fā)與人們的日常需求相關(guān),作為中國(guó)主流智能的技術(shù)開發(fā)系統(tǒng),自然需要這樣的軟件來(lái)滿足更多用戶的需求和體驗(yàn)。1.3系統(tǒng)的特點(diǎn)(1)校園心聲墻小程序中的web管理端管理中的后端不再使用古老的jsp+javabean+servlet技術(shù),而是使用當(dāng)前主流的springboot框架,它減少java配置代碼,簡(jiǎn)化編程代碼,目前springboot框架也是很多企業(yè)選擇的框架之一。(2)校園心聲墻小程序中的web管理端管理中的前端使用的是bootstrap框架,它配合ajax和jquery可以美化頁(yè)面設(shè)計(jì)。(3)校園心聲墻小程序中數(shù)據(jù)庫(kù)用的mysql5.7,它執(zhí)行效率高。1.4論文結(jié)構(gòu)與章節(jié)安排本文共分為六章,章節(jié)內(nèi)容安排如下:第一章:引言。第一章主要介紹了課題研究的背景意義,國(guó)內(nèi)目前相關(guān)研究現(xiàn)狀以及技術(shù)和本文的研究?jī)?nèi)容與主要工作。第二章:系統(tǒng)需求分析。第二章主要從系統(tǒng)的可行性、功能等方面進(jìn)行需求分析。第三章:系統(tǒng)總體設(shè)計(jì)。第三章主要對(duì)系統(tǒng)功能模塊、數(shù)據(jù)庫(kù)進(jìn)行功能設(shè)計(jì)。第四章:系統(tǒng)詳細(xì)設(shè)計(jì)。第四章主要介紹了系統(tǒng)各個(gè)用戶的功能、系統(tǒng)界面的實(shí)現(xiàn)。第五章:系統(tǒng)測(cè)試。第五章主要對(duì)系統(tǒng)的部分界面進(jìn)行測(cè)試并對(duì)主要功能進(jìn)行測(cè)試
2系統(tǒng)需求分析2.1可行性分析通過以下的網(wǎng)站總體需求分析,進(jìn)而分析是否擁有達(dá)成需求的技術(shù)、資金和開發(fā)人員等條件。那么就從以下幾點(diǎn)進(jìn)行簡(jiǎn)單的說明:2.1.1技術(shù)可行性分析校園心聲墻小程序存儲(chǔ)所使用的mysql數(shù)據(jù)庫(kù)以及開發(fā)中所使用的IDEA、Tomcat這些開發(fā)工具的使用,能夠給我們的編寫工作帶來(lái)許多的便利。系統(tǒng)使用springboot框架進(jìn)行開發(fā),使系統(tǒng)的可擴(kuò)展性和維護(hù)性更佳,減少java配置代碼,簡(jiǎn)化編程代碼,目前springboot框架也是很多企業(yè)選擇的框架之一。2.1.2操作可行性分析在日常生活中,隨著小程序的快速推廣和使用,越來(lái)越多人掌握小程序的使用方法,基于微信小程序校園心聲墻小程序在這種條件背景下是很容易被人們所接受和熟悉的,所以在操作上沒任何問題。2.1.3經(jīng)濟(jì)可行性分析在開發(fā)校園心聲墻小程序中所使用的開發(fā)軟件像IDEA開發(fā)工具、Tomcat8.0服務(wù)器、MySQL5.7數(shù)據(jù)庫(kù)、Photoshop圖片處理軟件等,這些都是開源免費(fèi)的,并且校園心聲墻小程序是自己設(shè)計(jì)并編碼實(shí)現(xiàn)的,數(shù)據(jù)庫(kù)是使用流行mysql進(jìn)行數(shù)據(jù)的存儲(chǔ),開源的mysql等技術(shù)的使用,減少系統(tǒng)開發(fā)費(fèi)用。2.2功能需求分析校園心聲墻小程序中的web管理端管理端采用了IntelliJIDEA2019.3.4開發(fā)工具,配合了java開發(fā)語(yǔ)言中springboot開發(fā)框架以及tomcat8.0服務(wù)器、jdk1.8,用戶端采用了微信開發(fā)者工具穩(wěn)定版1.05.2111300,頁(yè)面使用wxss和wxml進(jìn)行布局,用戶端和web管理端管理端采用json接口通信。校園心聲墻小程序中的管理端管理員角色主要負(fù)責(zé)了如下功能操作。(1)網(wǎng)站管理功能需求:網(wǎng)站管理包括了輪播圖、公告信息兩部分,管理員可以對(duì)這兩部分進(jìn)行添加,修改,刪除和查詢等。(2)人員管理功能需求:人員管理部分包括了管理員,學(xué)生用戶兩個(gè)角色,管理員可以對(duì)這兩個(gè)角色進(jìn)行添加,修改,刪除以及查詢等。(3)內(nèi)容管理功能需求:內(nèi)容管理主要實(shí)現(xiàn)了心聲墻、心聲分類、熱門話題、話題分類的功能,管理員可以進(jìn)行維護(hù)管理操作。圖2-1管理員角色用例圖校園心聲墻小程序中的用戶端用戶角色主負(fù)責(zé)了如下功能操作。(1)用戶查看系統(tǒng)信息功能需求:用戶可以通過系統(tǒng)首頁(yè)查看校園心聲墻小程序信息,包括首頁(yè),心聲墻、熱門話題、我的等模塊。(2)用戶登錄與注冊(cè)功能需求:用戶可以通過注冊(cè)獲取帳戶。(3)首頁(yè):可查看管理員發(fā)布所有公告消息;(4)心聲墻:可搜索查看心聲墻所有帖子,對(duì)喜歡的帖子進(jìn)行收藏、點(diǎn)贊評(píng),也可發(fā)布帖子;(5)熱門話題:用戶登錄用戶端以后,是可以對(duì)資訊信息進(jìn)行查看、點(diǎn)贊、收藏、評(píng)論等操作;(6)我的:用戶可對(duì)個(gè)人信息、頭像、密碼、昵稱進(jìn)行修改等操作。圖2-2用戶端用戶角色用例圖3系統(tǒng)總體設(shè)計(jì)3.1系統(tǒng)開發(fā)架構(gòu)的選擇小程序可以通過瀏覽器來(lái)規(guī)避很多問題,依靠瀏覽器讓項(xiàng)目的開發(fā)變得簡(jiǎn)單,不再擔(dān)心項(xiàng)目的版本跟新帶來(lái)的數(shù)據(jù)傳輸?shù)纫幌盗械膯栴}。值得注意的是B/S架構(gòu)的項(xiàng)目,瀏覽器與服務(wù)器的數(shù)據(jù)的交互是通過http協(xié)議進(jìn)行的,同樣,服務(wù)器與數(shù)據(jù)庫(kù)的數(shù)據(jù)交互也是通過http協(xié)議,統(tǒng)一的格式讓信息的交互更加的簡(jiǎn)便與快捷。下圖是具體的b/s架構(gòu)圖:圖3-1系統(tǒng)B/S結(jié)構(gòu)3.1系統(tǒng)功能模塊設(shè)計(jì)校園心聲墻小程序的整體架構(gòu)確定以后,再來(lái)看校園心聲墻小程序的主要功能模塊圖。整體的功能模塊包括用戶端和管理端,用戶端只要實(shí)現(xiàn)用戶注冊(cè)登錄,主要的頁(yè)面,包括首頁(yè),心聲墻、熱門話題等頁(yè)面。管理端的模塊主要實(shí)現(xiàn)了管理員用戶,有網(wǎng)站管理、人員管理、內(nèi)容管理等。確定了模塊以后,再設(shè)計(jì)各個(gè)模塊的功能特點(diǎn),方便抽取出各個(gè)模塊的公共部分來(lái)。圖3.1校園心聲墻小程序功能模塊圖3.1.1用戶端頁(yè)面設(shè)計(jì)本校園心聲墻小程序的用戶端頁(yè)面所有的頁(yè)面設(shè)計(jì)主要是上中下的結(jié)構(gòu),這樣的好處是讓所有的頁(yè)面更加的整潔。主題的頁(yè)面顏色采用淡色為主,為突出頁(yè)面的美觀。主頁(yè)面上分為導(dǎo)航欄,導(dǎo)航欄的每個(gè)導(dǎo)航項(xiàng)目設(shè)計(jì)為一張jsp頁(yè)面,除此之外,還有就是用戶中心頁(yè)面,管理端的頁(yè)面了。管理端頁(yè)面已簡(jiǎn)單的上下結(jié)構(gòu)為主。3.1.2用戶模塊設(shè)計(jì)(1)用戶模塊結(jié)構(gòu)圖本網(wǎng)站的用戶包括管理員,注冊(cè)用戶兩模塊。兩種用戶模塊的功能基本是相同的,用戶模塊比管理員多了一個(gè)注冊(cè)功能,所以以用戶模塊的結(jié)構(gòu)圖為例進(jìn)行分析,如下圖:圖3.2用戶模塊結(jié)構(gòu)圖(2)各個(gè)結(jié)構(gòu)的具體業(yè)務(wù)邏輯a.查詢用戶信息:設(shè)計(jì)最基礎(chǔ)的查詢功能,主要就是根據(jù)用戶id查詢用戶信息。該功能主要體現(xiàn)在管理員用戶信息查詢和用戶自己查詢信息的時(shí)候。b.修改用戶信息:用戶可以根據(jù)情況,對(duì)自己的基本信息進(jìn)行修改,包括名字修改、密碼修改、頭像修改等操作。c.增加用戶:用戶可以通過注冊(cè)來(lái)獲得賬號(hào)d.刪除用戶信息:管理員沒有權(quán)利進(jìn)行刪除信息的刪除,最多把用戶加入到黑名單中,禁止用戶進(jìn)行登錄操作。3.1.3評(píng)論管理模塊設(shè)計(jì)(1)評(píng)論模塊結(jié)構(gòu)圖校園心聲墻小程序是一個(gè)交流性質(zhì)的公開網(wǎng)站,用戶和用戶之間可以對(duì)網(wǎng)站上的內(nèi)容,比如心聲墻、熱門話題等進(jìn)行點(diǎn)評(píng),增加用戶之間的互動(dòng)性。但是同時(shí)也為了更好的規(guī)范評(píng)論的內(nèi)容,給予管理員刪除不合適的言論的功能,所以需要專門設(shè)計(jì)一個(gè)評(píng)論管理模塊,具體的結(jié)構(gòu)圖如下:圖3-4評(píng)論模塊結(jié)構(gòu)圖(2)各個(gè)結(jié)構(gòu)的具體業(yè)務(wù)邏輯a.查詢?cè)u(píng)論:設(shè)計(jì)最基礎(chǔ)的查詢功能,主要就是根據(jù)用戶id查詢?cè)撚脩粝碌乃性u(píng)論信息。b.發(fā)布評(píng)論:用戶可以根據(jù)情況,發(fā)布自己評(píng)論信息到網(wǎng)站上。c.刪除評(píng)論:管理員沒有權(quán)限修改用戶的評(píng)論信息,但是可以刪除用戶的整條評(píng)論。3.1.4熱門話題模塊設(shè)計(jì)校園心聲墻小程序重要的一個(gè)功能就是熱門話題,其模塊功能結(jié)構(gòu),具體的結(jié)構(gòu)圖如下:圖3.4訂單模塊結(jié)構(gòu)圖(2)各個(gè)結(jié)構(gòu)的具體業(yè)務(wù)邏輯a.添加話題:管理員可以對(duì)話題進(jìn)行添加。b.修改話題:管理員可以對(duì)話題進(jìn)行修改。c.刪除話題:管理員可以對(duì)話題進(jìn)行刪除。d.熱門話題分類:管理員可以對(duì)熱門話題進(jìn)行分類管理。3.2數(shù)據(jù)庫(kù)設(shè)計(jì)3.2.1數(shù)據(jù)庫(kù)概要設(shè)計(jì)校園心聲墻小程序根據(jù)上面的E-R實(shí)體圖,就再找到實(shí)體與實(shí)體之間的關(guān)系來(lái),制作總的E-R圖,實(shí)體之間的關(guān)系一共有4種,也就是一對(duì)一,多對(duì)一,一對(duì)多和多對(duì)多,總的E-R圖是設(shè)計(jì)數(shù)據(jù)庫(kù)表格的依據(jù),如下圖是網(wǎng)站的總E-R圖。圖3.5系統(tǒng)總體E-R圖3.2.2數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)根據(jù)上面的E-R圖,繼而設(shè)計(jì)數(shù)據(jù)庫(kù)表格,注意的是數(shù)據(jù)庫(kù)表格遵從三范式標(biāo)準(zhǔn),這樣以后操作也會(huì)更加簡(jiǎn)單一些。系統(tǒng)的各個(gè)數(shù)據(jù)庫(kù)表如下。access_token字段名稱類型長(zhǎng)度不是null主鍵字段說明token_idint11是是臨時(shí)訪問牌IDtokenvarchar64否否臨時(shí)訪問牌infotext0否否maxageint2是否最大壽命c(diǎn)reate_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間user_idint11是是用戶編號(hào)article字段名稱類型長(zhǎng)度不是null主鍵字段說明article_idmediumint8是是文章idtitlevarchar125是否標(biāo)題typevarchar64是否文章分類hitsint10是是點(diǎn)擊數(shù)praise_lenint11是否點(diǎn)贊數(shù)create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間sourcevarchar255否否來(lái)源urlvarchar255否否來(lái)源地址tagvarchar255否否標(biāo)簽contentlongtext0否否正文imgvarchar255否否封面圖descriptiontext0否否文章描述article_type字段名稱類型長(zhǎng)度不是null主鍵字段說明type_idsmallint5是是分類IDdisplaysmallint4是是顯示順序namevarchar16是否分類名稱father_idsmallint5是是上級(jí)分類IDdescriptionvarchar255否否描述icontext0否否分類圖標(biāo)urlvarchar255否否外鏈地址create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間auth字段名稱類型長(zhǎng)度不是null主鍵字段說明auth_idint11是是授權(quán)IDuser_groupvarchar64否否用戶組mod_namevarchar64否否模塊名table_namevarchar64否否表名page_titlevarchar255否否頁(yè)面標(biāo)題pathvarchar255否否路由路徑positionvarchar32否否位置modevarchar32是否跳轉(zhuǎn)方式addtinyint1是是是否可增加deltinyint1是是是否可刪除settinyint1是是是否可修改gettinyint1是是是否可查看field_addvarchar500否否添加字段field_setvarchar500否否修改字段field_getvarchar500否否查詢字段table_nav_namevarchar500否否跨表導(dǎo)航名稱table_navvarchar500否否跨表導(dǎo)航optiontext0否否配置create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間collect字段名稱類型長(zhǎng)度不是null主鍵字段說明collect_idint10是是收藏IDuser_idint10是是收藏人IDsource_tablevarchar255否否來(lái)源表source_fieldvarchar255否否來(lái)源字段source_idint10是是來(lái)源IDtitlevarchar255否否標(biāo)題imgvarchar255否否封面create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間comment字段名稱類型長(zhǎng)度不是null主鍵字段說明comment_idint11是是評(píng)論IDuser_idint11是是評(píng)論人IDreply_to_idint11是是回復(fù)評(píng)論IDcontentlongtext0否否內(nèi)容nicknamevarchar255否否昵稱avatarvarchar255否否頭像地址create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間source_tablevarchar255否否來(lái)源表source_fieldvarchar255否否來(lái)源字段source_idint10是是來(lái)源IDforum字段名稱類型長(zhǎng)度不是null主鍵字段說明forum_idmediumint8是是論壇iddisplaysmallint5是是排序user_idmediumint8是是用戶IDnicknamevarchar16否否昵稱praise_lenint10否否點(diǎn)贊數(shù)hitsint10是是訪問數(shù)titlevarchar125是否標(biāo)題keywordsvarchar125否否關(guān)鍵詞descriptionvarchar255否否描述urlvarchar255否否來(lái)源地址tagvarchar255否否標(biāo)簽imgtext0否否封面圖contentlongtext0否否正文create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間avatarvarchar255否否發(fā)帖人頭像typevarchar64是否論壇分類forum_type字段名稱類型長(zhǎng)度不是null主鍵字段說明type_idsmallint5是是分類IDnamevarchar16是否分類名稱descriptionvarchar255否否描述urlvarchar255否否外鏈地址father_idsmallint5是是上級(jí)分類IDiconvarchar255否否分類圖標(biāo)create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間hits字段名稱類型長(zhǎng)度不是null主鍵字段說明hits_idint10是是點(diǎn)贊IDuser_idint11是是點(diǎn)贊人create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間source_tablevarchar255否否來(lái)源表source_fieldvarchar255否否來(lái)源字段source_idint10是是來(lái)源IDinformation_center字段名稱類型長(zhǎng)度不是null主鍵字段說明information_center_idint11是否信息中心IDsend_userint11否否發(fā)送用戶receiving_userint11否否接收用戶message_headervarchar64否否信息標(biāo)題send_datedate0否否發(fā)送日期information_contenttext0否否信息內(nèi)容recommendint11是否智能推薦create_timedatetime0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間notice字段名稱類型長(zhǎng)度不是null主鍵字段說明notice_idmediumint8是是公告idtitlevarchar125是否標(biāo)題contentlongtext0否否正文create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間praise字段名稱類型長(zhǎng)度不是null主鍵字段說明praise_idint10是是點(diǎn)贊IDuser_idint11是是點(diǎn)贊人create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間source_tablevarchar255否否來(lái)源表source_fieldvarchar255否否來(lái)源字段source_idint10是是來(lái)源IDstatustinyint1是否點(diǎn)贊狀態(tài)slides字段名稱類型長(zhǎng)度不是null主鍵字段說明slides_idint10是是輪播圖IDtitlevarchar64否否標(biāo)題contentvarchar255否否內(nèi)容urlvarchar255否否鏈接imgvarchar255否否輪播圖hitsint10是是點(diǎn)擊量create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間student_users字段名稱類型長(zhǎng)度不是null主鍵字段說明student_users_idint11是否學(xué)生用戶IDstudent_idvarchar64否否學(xué)生學(xué)號(hào)student_namevarchar64否否學(xué)生姓名student_gendervarchar64否否學(xué)生性別student_departmentvarchar64否否學(xué)生院系majorvarchar64否否學(xué)生專業(yè)examine_statevarchar16是否審核狀態(tài)recommendint11是否智能推薦user_idint11是否用戶IDcreate_timedatetime0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間upload字段名稱類型長(zhǎng)度不是null主鍵字段說明upload_idint11是否上傳IDnamevarchar64否否文件名pathvarchar255否否訪問路徑filevarchar255否否文件路徑displayvarchar255否否顯示順序father_idint11否否父級(jí)IDdirvarchar255否否文件夾typevarchar32否否文件類型user字段名稱類型長(zhǎng)度不是null主鍵字段說明user_idmediumint8是是用戶IDstatesmallint1是是賬戶狀態(tài)user_groupvarchar32否否所在用戶組login_timetimestamp0是否上次登錄時(shí)間phonevarchar11否否手機(jī)號(hào)碼phone_statesmallint1是是手機(jī)認(rèn)證usernamevarchar16是否用戶名nicknamevarchar16否否昵稱passwordvarchar64是否密碼emailvarchar64否否郵箱email_statesmallint1是是郵箱認(rèn)證avatarvarchar255否否頭像地址create_timetimestamp0是否創(chuàng)建時(shí)間user_group字段名稱類型長(zhǎng)度不是null主鍵字段說明group_idmediumint8是是用戶組IDdisplaysmallint4是是顯示順序namevarchar16是否名稱descriptionvarchar255否否描述source_tablevarchar255否否來(lái)源表source_fieldvarchar255否否來(lái)源字段source_idint10是是來(lái)源IDregistersmallint1否是注冊(cè)位置create_timetimestamp0是否創(chuàng)建時(shí)間update_timetimestamp0是否更新時(shí)間4系統(tǒng)詳細(xì)實(shí)現(xiàn)校園心聲墻小程序的詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)主要是根據(jù)前面的校園心聲墻小程序的需求分析和校園心聲墻小程序的總體設(shè)計(jì)來(lái)設(shè)計(jì)頁(yè)面并實(shí)現(xiàn)業(yè)務(wù)邏輯。主要從校園心聲墻小程序界面實(shí)現(xiàn)、業(yè)務(wù)邏輯實(shí)現(xiàn)這兩部分進(jìn)行介紹。4.1用戶端功能實(shí)現(xiàn)4.1.1用戶端主頁(yè)功能實(shí)現(xiàn)用戶進(jìn)入首頁(yè)之后會(huì)顯示如下的一個(gè)窗口。系統(tǒng)以上中下的布局進(jìn)行展示,首先映入眼簾的是系統(tǒng)的導(dǎo)航欄,下面是網(wǎng)站公告,再往下是各種各樣的資訊,其主界面展示如下圖4.1所示。如下圖:圖4.1校園心聲墻小程序主界面由于該項(xiàng)目只是用來(lái)測(cè)試,用戶登錄首頁(yè)展示的圖片等數(shù)據(jù)有的是從項(xiàng)目本地拿到的,有的則是從數(shù)據(jù)庫(kù)中獲取的。頁(yè)面中的搜索部分,頁(yè)頭部分等都是屬于公共樣式,可以進(jìn)行公告樣式的抽取,然后再引入到j(luò)sp頁(yè)面中。4.1.2用戶注冊(cè)登錄功能實(shí)現(xiàn)不是校園心聲墻小程序中正式用戶的是可以在線進(jìn)行注冊(cè)的,當(dāng)用戶點(diǎn)擊右上角的“注冊(cè)”的時(shí)候,,當(dāng)填寫上自己的賬號(hào)+密碼+確認(rèn)密碼+昵稱+郵箱+手機(jī)號(hào)+選擇身份登信息后,后再點(diǎn)擊“注冊(cè)”按鈕后將會(huì)先驗(yàn)證輸入的有沒有空數(shù)據(jù),再次驗(yàn)證密碼和確認(rèn)密碼是否是一樣的,最后驗(yàn)證輸入的賬戶名和數(shù)據(jù)庫(kù)表中已經(jīng)注冊(cè)的賬戶名是否重復(fù),只有都驗(yàn)證沒問題后即可注冊(cè)成功。用戶注冊(cè)界面展示如下圖4.2所示。圖4.2校園心聲墻小程序用戶注冊(cè)界面系統(tǒng)用戶注冊(cè)關(guān)鍵代碼如下。 /***注冊(cè)*@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]用戶獲取其他與用戶相關(guān)的數(shù)據(jù)*/@Id@GeneratedValue(strategy=GenerationType.IDENTITY)@Column(name="user_id")privateIntegeruserId;/***賬戶狀態(tài):[0,10](1可用|2異常|3已凍結(jié)|4已注銷)*/@Basic@Column(name="state")privateIntegerstate;/***所在用戶組:[0,32767]決定用戶身份和權(quán)限*/@Basic@Column(name="user_group")privateStringuserGroup;/***上次登錄時(shí)間:*/@Basic@Column(name="login_time")privateTimestamploginTime;/***手機(jī)號(hào)碼:[0,11]用戶的手機(jī)號(hào)碼,用于找回密碼時(shí)或登錄時(shí)*/@Basic@Column(name="phone")privateStringphone;/***手機(jī)認(rèn)證:[0,1](0未認(rèn)證|1審核中|2已認(rèn)證)*/@Basic@Column(name="phone_state")privateIntegerphoneState;/***用戶名:[0,16]用戶登錄時(shí)所用的賬戶名稱*/@Basic@Column(name="username")privateStringusername;/***昵稱:[0,16]*/@Basic@Column(name="nickname")privateStringnickname;/***密碼:[0,32]用戶登錄所需的密碼,由6-16位數(shù)字或英文組成*/@Basic@Column(name="password")privateStringpassword;/***郵箱:[0,64]用戶的郵箱,用于找回密碼時(shí)或登錄時(shí)*/@Basic@Column(name="email")privateStringemail;/***郵箱認(rèn)證:[0,1](0未認(rèn)證|1審核中|2已認(rèn)證)*/@Basic@Column(name="email_state")privateIntegeremailState;/***頭像地址:[0,255]*/@Basic@Column(name="avatar")privateStringavatar;/***創(chuàng)建時(shí)間:*/@Basic@Column(name="create_time")@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss")privateTimestampcreateTime;@Basic@TransientprivateStringcode;}4.2.3登錄功能實(shí)現(xiàn)校園心聲墻小程序中的用戶端上注冊(cè)后的用戶是可以通過自己的賬戶名和密碼進(jìn)行登錄的,當(dāng)用戶輸入完整的自己的賬戶名和密碼信息并點(diǎn)擊“登錄”按鈕后,將會(huì)首先驗(yàn)證輸入的有沒有空數(shù)據(jù),再次驗(yàn)證輸入的賬戶名+密碼和數(shù)據(jù)庫(kù)中當(dāng)前保存的用戶信息是否一致,只有在一致后將會(huì)登錄成功并自動(dòng)跳轉(zhuǎn)到校園心聲墻小程序的首頁(yè)中;否則將會(huì)提示相應(yīng)錯(cuò)誤信息,用戶登錄界面如下圖4.3所示。圖4.3校園心聲墻小程序登錄界面登錄關(guān)鍵代碼如下。/***登錄*@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,"賬號(hào)或密碼不能為空");}if(resultList==null||password==null){returnerror(30000,"賬號(hào)或密碼不能為空");}//判斷是否有這個(gè)用戶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)){//存儲(chǔ)Token到數(shù)據(jù)庫(kù)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,"賬號(hào)或密碼不正確");}}4.2.4心聲墻功能實(shí)現(xiàn)當(dāng)用戶點(diǎn)擊“心聲墻”后,用戶可以搜索查看心聲墻所有帖子,對(duì)喜歡的帖子進(jìn)行收藏、點(diǎn)贊評(píng),也可發(fā)布帖子;如圖4.4所示:圖4.4心聲墻界面心聲墻關(guān)鍵代碼如下所示。@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.2.5熱門話題功能實(shí)現(xiàn)當(dāng)用戶點(diǎn)擊“熱門話題”后,是可以對(duì)熱門話題進(jìn)行查看、點(diǎn)贊、收藏、評(píng)論等操作;具體的實(shí)現(xiàn)界面如下圖4.5所示:圖4.5熱門話題界面熱門話題關(guān)鍵代碼如下所示。@PostMapping("/upload")publicMap<String,Object>upload(@RequestParam("file")MultipartFilefile){("進(jìn)入方法");if(file.isEmpty()){returnerror(30000,"沒有選擇文件");}try{//判斷有沒路徑,沒有則創(chuàng)建StringfilePath=System.getProperty("user.dir")+"\\target\\classes\\static\\upload\\";FiletargetDir=newFile(filePath);if(!targetDir.exists()&&!targetDir.isDirectory()){if(targetDir.mkdirs()){("創(chuàng)建目錄成功");}else{log.error("創(chuàng)建目錄失敗");}}StringfileName=file.getOriginalFilename();Filedest=newFile(filePath+fileName);("文件路徑:{}",dest.getPath());("文件名:{}",dest.getName());file.transferTo(dest);JSONObjectjsonObject=newJSONObject();jsonObject.put("url","/api/upload/"+fileName);returnsuccess(jsonObject);}catch(IOExceptione){("上傳失?。簕}",e.getMessage());}returnerror(30000,"上傳失敗");}4.2.6我的功能實(shí)現(xiàn)從基于微信小程序校園心聲墻小程序用戶端底部的“我的”菜單進(jìn)入后選擇“基本信息”后可以對(duì)頭像、昵稱、密碼等信息進(jìn)行修書,界面如下圖4.6所示。圖4.6我的界面我的關(guān)鍵代碼如下所示。@RequestMapping("/get_list")publicMap<String,Object>getList(HttpServletRequestrequest){Map<String,Object>map=service.selectToPage(service.readQuery(request),service.readConfig(request));returnsuccess(map);4.2管理端功能實(shí)現(xiàn)4.2.1管理端管理員登錄功能實(shí)現(xiàn)校園心聲墻小程序中的管理端的管理員是可以通過自己的賬戶名和密碼進(jìn)行登錄的,當(dāng)管理員輸入完整的自己的賬戶名和密碼信息并點(diǎn)擊“登錄”按鈕后,將會(huì)首先驗(yàn)證輸入的有沒有空數(shù)據(jù),再次驗(yàn)證輸入的賬戶名+密碼和數(shù)據(jù)庫(kù)中當(dāng)前保存的用戶信息是否一致,只有在一致后將會(huì)登錄成功并自動(dòng)跳轉(zhuǎn)到校園心聲墻小程序的首頁(yè)中;否則將會(huì)提示相應(yīng)錯(cuò)誤信息,管理員登錄界面如下圖4.8所示。圖4.8管理端管理員登錄界面4.2.2人員管理功能實(shí)現(xiàn)管理員在人員管理模塊,可以對(duì)用戶信息進(jìn)行管理,人員管理模塊由管理員,學(xué)生用戶兩部分組成,這里以學(xué)生用戶管理為例,具體的實(shí)現(xiàn)界面如下圖4.9所示:圖4.9人員管理界面4.2.3網(wǎng)站管理功能實(shí)現(xiàn)校園心聲墻小程序中的管理人員在“網(wǎng)站管理”這一菜單中是可以對(duì)用戶端顯示的輪播圖以及公告信息進(jìn)行管控。界面如下圖4.10所示:圖4.10網(wǎng)站管理界面網(wǎng)站管理關(guān)鍵代碼如下所示。@RequestMapping("/get_obj")publicMap<String,Object>obj(HttpServletRequestrequest){Queryselect=service.select(service.readQuery(request),service.readConfig(request));ListresultList=select.getResultList();if(resultList.size()>0){JSONObjectjsonObject=newJSONObject();jsonObject.put("obj",resultList.get(0));returnsuccess(jsonObject);}else{returnsuccess(null);}}publicQueryselect(Map<String,String>query,Map<String,String>config){StringBuffersql=newStringBuffer("select");sql.append(config.get(FindConfig.FIELD)==null||"".equals(config.get(FindConfig.FIELD))?"*":config.get(FindConfig.FIELD)).append("");sql.append("from").append("`").append(table).append("`").append(toWhereSql(query,"0".equals(config.get(FindConfig.LIKE))));if(config.get(FindConfig.GROUP_BY)!=null&&!"".equals(config.get(FindConfig.GROUP_BY))){sql.append("groupby").append(config.get(FindConfig.GROUP_BY)).append("");}if(config.get(FindConfig.ORDER_BY)!=null&&!"".equals(config.get(FindConfig.ORDER_BY))){sql.append("orderby").append(config.get(FindConfig.ORDER_BY)).append("");}if(config.get(FindConfig.PAGE)!=null&&!"".equals(config.get(FindConfig.PAGE))){intpage=config.get(FindConfig.PAGE)!=null&&!"".equals(config.get(FindConfig.PAGE))?Integer.parseInt(config.get(FindConfig.PAGE)):1;intlimit=config.get(FindConfig.SIZE)!=null&&!"".equals(config.get(FindConfig.SIZE))?Integer.parseInt(config.get(FindConfig.SIZE)):10;sql.append("limit").append((1)*limit).append(",").append(limit);}("[{}]-查詢操作,sql:{}",table,sql);returnrunEntitySql(sql.toString());}4.2.4輪播圖管理界面管理人員在“輪播圖管理”這一菜單中是可以對(duì)前臺(tái)顯示的輪播圖進(jìn)行增刪改查,具體的實(shí)現(xiàn)界面如下圖4.11所示:圖4.11輪播圖管理界面輪播圖管理關(guān)鍵代碼如下所示。@RequestMapping(value={"/count_group","/count"})publicMap<String,Object>count(HttpServletRequestrequest){Querycount=service.count(service.readQuery(request),service.readConfig(request));returnsuccess(count.getResultList());}4.2.5公告消息界面管理系統(tǒng)中的管理人員在“公告消息”這一菜單中是可以對(duì)校園心聲墻小程序內(nèi)的公告消息可以進(jìn)行增刪改查操作,具體的實(shí)現(xiàn)界面如下圖4.12所示:圖4.12公告消息界面公告消息管理關(guān)鍵代碼如下所示。@RequestMapping(value={"/avg_group","/avg"}) publicMap<String,Object>avg(HttpServletRequestrequest){Querycount=service.avg(service.readQuery(request),service.readConfig(request));returnsuccess(count.getResultList());}4.2.6內(nèi)容管理功能實(shí)現(xiàn)管理人員在“內(nèi)容管理”這一菜單下是可以對(duì)心聲墻、心聲分類、熱門話題、話題分類,這四個(gè)子菜單,管理員能夠?qū)@四個(gè)模塊進(jìn)行管控的,具體的實(shí)現(xiàn)界面如下圖4.13所示:圖4.13內(nèi)容管理界面5系統(tǒng)測(cè)試系統(tǒng)開發(fā)到了最后一個(gè)階段那就是系統(tǒng)測(cè)試,系統(tǒng)測(cè)試對(duì)軟件的開發(fā)其實(shí)是非常有必要的。因?yàn)闆]什么系統(tǒng)一經(jīng)開發(fā)出來(lái)就可能會(huì)盡善盡美,再厲害的系統(tǒng)開發(fā)工程師也會(huì)在系統(tǒng)開發(fā)的時(shí)候出現(xiàn)紕漏,系統(tǒng)測(cè)試能夠較好的改正一些bug,為后期系統(tǒng)的維護(hù)性提供很好的支持。通過系統(tǒng)測(cè)試,開發(fā)人員也可以建立自己對(duì)系統(tǒng)的信心,為后期的系統(tǒng)版本的跟新提供支持。5.1軟件測(cè)試的重要性只有在運(yùn)行和維護(hù)階段之前經(jīng)歷大量的測(cè)試的軟件,才能說明它的質(zhì)量是經(jīng)得起檢驗(yàn)的。最近計(jì)算機(jī)業(yè)界也都一致認(rèn)為,測(cè)試應(yīng)該存在于軟件設(shè)計(jì)的每個(gè)階段,因?yàn)樵皆绨l(fā)現(xiàn)錯(cuò)誤,修復(fù)起來(lái)就越容易。實(shí)際上,對(duì)于一個(gè)軟件應(yīng)用,錯(cuò)誤是必然存在的,無(wú)論使用何種技術(shù)或手段,都不可能絕對(duì)的排除軟件漏洞。測(cè)試是隨著軟件開發(fā)一同誕生的,兩者是共同發(fā)展進(jìn)步的。實(shí)際上,測(cè)試可以大幅度的降低維護(hù)的成本,如果一個(gè)漏洞在開發(fā)的早期就被發(fā)現(xiàn),那么修復(fù)它的成本遠(yuǎn)比上線后再修復(fù)的成本要低得多。5.2測(cè)試實(shí)例的研究與選擇測(cè)試有白盒測(cè)試和黑盒測(cè)試兩種方式。其中,白盒測(cè)試是將軟件看成一個(gè)透明的白盒子,按照程序的內(nèi)部控制結(jié)構(gòu)和處理技術(shù)邏輯來(lái)選定測(cè)試用例、軟件系統(tǒng)測(cè)試的邏輯路徑及過程需要進(jìn)行管理測(cè)試,又稱玻璃盒測(cè)試。因此白盒測(cè)試需要選擇足夠多的測(cè)試用例,覆蓋盡可能多的代碼來(lái)發(fā)現(xiàn)程序中的錯(cuò)誤。黑盒測(cè)試,也稱為功能測(cè)試。它將需軟件看作一個(gè)黑盒,像一個(gè)普通用戶一樣來(lái)模擬軟件的使用流程。黑盒測(cè)試通過大量的輸入邊界值或錯(cuò)誤數(shù)據(jù),來(lái)檢查是否可產(chǎn)生正確的輸出。本系統(tǒng)測(cè)試主要選擇黑盒測(cè)試,少量采用白盒測(cè)試。通過測(cè)試達(dá)到以下測(cè)試目的:1.檢查各大功能模塊的運(yùn)行,確保其能夠正確運(yùn)行,并檢查各頁(yè)面的完整性,保證頁(yè)面完整。2.檢查各個(gè)接口是否可以正確地輸入和輸出,保證數(shù)據(jù)流通穩(wěn)定可行。3.檢查數(shù)據(jù)結(jié)構(gòu),保證其和外部接口沒有訪問錯(cuò)誤,訪問順利。4.檢查原計(jì)劃的性能需求有沒有完成,運(yùn)行流暢。本系統(tǒng)的測(cè)試用例(部分):登錄部分測(cè)試用例編號(hào)對(duì)象項(xiàng)目操作預(yù)期結(jié)果結(jié)果1登錄登錄提示使用正確的賬號(hào)密碼登錄成功登錄預(yù)期結(jié)果2登錄提示使用正確的賬號(hào)但錯(cuò)誤的密碼登錄提示密碼錯(cuò)誤預(yù)期結(jié)果3登錄提示使用錯(cuò)誤的賬號(hào)登錄提示不存在賬戶預(yù)期結(jié)果4登錄提示不輸入賬號(hào),點(diǎn)擊登錄提示輸入賬號(hào)預(yù)期結(jié)果5登錄提示輸入賬號(hào)但不輸入密碼點(diǎn)擊登錄提示輸入密碼預(yù)期結(jié)果6登錄入口已登錄賬號(hào),查看登錄入口不顯示登錄入口預(yù)期結(jié)果5.3測(cè)試環(huán)境與測(cè)試條件處理器:InterCoreI7-4710MQ四核處理器內(nèi)存:4GB硬盤:1T操作系統(tǒng):Windows10數(shù)據(jù)庫(kù):MySQL5.4系統(tǒng)運(yùn)行情況全部測(cè)試用例都已通過(包括但不限于以上測(cè)試用例),且不存在漏洞,實(shí)現(xiàn)了論文開始時(shí)所作要求。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度城鄉(xiāng)實(shí)體地域劃分與土地利用規(guī)劃合同3篇
- 2025年度體育場(chǎng)館周邊臨時(shí)停車位租賃管理協(xié)議3篇
- 2025年度文化創(chuàng)意產(chǎn)業(yè)出借咨詢及合作開發(fā)合同4篇
- 2025年度汽車零部件OEM貼牌生產(chǎn)協(xié)議2篇
- 2025年度特色民宿租賃服務(wù)合同范本4篇
- 《電池技術(shù)教程》課件
- 2025年度租賃汽車保險(xiǎn)理賠服務(wù)合同模板4篇
- 2025年物業(yè)管理員考試輔導(dǎo)教材基本知識(shí)問答合同3篇
- 2025年湖南懷化信合勞務(wù)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江湖州建欣商貿(mào)有限公司招聘筆試參考題庫(kù)含答案解析
- 焊錫膏技術(shù)培訓(xùn)教材
- 函授本科《小學(xué)教育》畢業(yè)論文范文
- 高考高中英語(yǔ)單詞詞根詞綴大全
- 江蘇省泰州市姜堰區(qū)2023年七年級(jí)下學(xué)期數(shù)學(xué)期末復(fù)習(xí)試卷【含答案】
- 藥用輔料聚乙二醇400特性、用法用量
- 《中小學(xué)機(jī)器人教育研究(論文)11000字》
- GB/T 22085.1-2008電子束及激光焊接接頭缺欠質(zhì)量分級(jí)指南第1部分:鋼
- 全過程人民民主學(xué)習(xí)心得體會(huì)
- 2023年上海期貨交易所招聘筆試題庫(kù)及答案解析
- 附圖1岑溪市行政區(qū)劃圖
- word企業(yè)管理封面-可編輯
評(píng)論
0/150
提交評(píng)論