版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
中山大學南方學院裝訂中山大學南方學院裝訂線本科生畢業(yè)論文(設計)題目:基于S2SH的博客系統(tǒng)的設計與實現(xiàn)系名:電子通信與軟件工程 專業(yè):07級計算機科學與技術(shù)學號:姓名:鐘曉婷指導教師:苑俊英二○一一年五月
摘要當今社會已正式步入信息時代,而信息技術(shù)的主要目標就是如何使人們更方便地進行聯(lián)系和交流。因此,各種信息交流工具應運而生。在所有的主流通信軟件中,博客占有重要的一席之地。博客是一種新興、以互聯(lián)網(wǎng)為平臺的網(wǎng)絡型交友軟件。隨著計算機技術(shù)的發(fā)展,博客系統(tǒng)的開發(fā)技術(shù)也日趨完善。尤其是其安全性的提高以及完善的功能,使越來越多的人著迷于博客的獨特魅力。因此,從市場占有率來看,博客具備持久的可開發(fā)性。本文研究了一種基于S2SH架構(gòu)的博客系統(tǒng)。本系統(tǒng)實現(xiàn)的功能主要包括:用戶注冊、用戶登錄、用戶/博客/博文搜索、個人/博客信息管理、訪客/用戶評論、相冊管理和點擊率查看等。本系統(tǒng)采用的是Structs2+Spring+Hibernate三層架構(gòu),基于MyEclipse8.5和Mysql5.0相結(jié)合的開發(fā)模式。利用MyEclipse的相關(guān)技術(shù),可以在數(shù)據(jù)庫和J2EE的開發(fā)、發(fā)布以及應用程序服務器的整合等方面極大地提高工作效率;利用其提供的各種組件如MyEclipseDatabaseExplorer,MyEclipseJavaEnterprise等建立數(shù)據(jù)庫、連接數(shù)據(jù)庫、對數(shù)據(jù)庫進行分析管理并建立相關(guān)頁面,經(jīng)過不斷地改進,最終實現(xiàn)了博客系統(tǒng)。關(guān)鍵詞:博客系統(tǒng),S2SH,Myeclipse,JAVA,Mysql
ABSTRACTOursocietyhasformallybeenintotheinformationagetoday,andinformationtechno-logy'smaingoalistomakepeoplemoreeasilytocommunicateandcontactwitheachother.Thereforemanykindsofinformationcommunicationtoolsariseatthehistoricmoment.Bloghasanimportroleintheallmainstreamcommunicationsoftware.Blogisadatingtoolwhichisanewkindofsoftwareandtakethenetworkastheplatform.Bythecomputertechnology’sdevelopment,thetechnologyofBlogsystemisbetterandbetter.Especiallyduetotheimprovementofsecurityandperfectfunction,moreandmorepeoplearelostinbloguniquecharm.Sobloghaslastingdevelopmentwhichisjudgedfrommarketshare.ThisthesisdiscussesblogsystemwhichisbasedonS2SHframework.Thissystemmainlyrealizedfunctionsincludes:registration,login,user/blog/personal/blogsearch,personal/bloginformationmanagement,visitors/userremark,photoalbummanagem-ent,hitsviewandsoon.Thissystemusesstruts2+Spring+HibernateframeworkonthestructureandbasedonthedevelopmentmodewhichMyEclipse8.5combinesMysql5.0.WiththeMyEclipsetechnology,wecanimprovetheworkefficiencyinintegrationofdatabaseandJ2EEdevelopment,releaseandapplicationserver.UseofvariouscomponentssuchasMyEclipseDatabaseExplorer,MyEclipseJavaEnterpris-eandsoonwhichitsporividecancreatedatabse,connecttoDatabase,managedatabaseandestablishsomepages.Aftercontinuousimprovement,theblogsystemfinallycompleted.Keywords:BlogSystem,S2SH,Myeclipse,JAVA,Mysql
目錄摘要 IABSTRACT II目錄 III第1章緒論 11.1研究背景及意義 11.2國內(nèi)外博客現(xiàn)狀比較 21.2.1博客作者的性別 21.2.2博客已經(jīng)不是新事物 21.2.3寫博客的目的 21.2.4關(guān)于博客與傳統(tǒng)媒體 31.2.5博客在中國的公信力 31.2.6總結(jié) 31.3研究的主要內(nèi)容 31.4本文的組織 4第2章相關(guān)技術(shù)和配置 52.1MyEclipse 52.2S2SH 52.2.1Struts2 52.2.2Spring 52.2.3Hibernate 62.2.4Struts2+Spring+Hibernate的整合 62.3Apache 72.4Tomcat 72.5FCKEditor 72.5.1FCKeditor簡介 72.5.2FCKeditor配置 82.6Mysql數(shù)據(jù)庫介紹和配置 122.6.1Mysql數(shù)據(jù)庫的介紹 122.6.2Mysql在Myeclipse中的配置 12第3章系統(tǒng)需求分析 183.1系統(tǒng)概述 183.2功能描述 183.3系統(tǒng)用例圖 193.4功能描述 193.4.1功能1評論管理 193.4.2功能2首頁 213.4.3用例3點擊率 223.5功能活動圖 223.5.1評論管理活動圖 223.5.2首頁活動圖 233.5.3點擊率活動圖 253.6術(shù)語表 25第4章系統(tǒng)概要設計 264.1系統(tǒng)架構(gòu)設計 264.2系統(tǒng)關(guān)鍵抽象和類圖 274.2.1系統(tǒng)關(guān)鍵抽象 274.2.2系統(tǒng)類圖 284.3數(shù)據(jù)庫設計 294.1.1UserInfo表 294.1.2BlogInfo表 294.1.3BlogClick表 294.1.4Remark表 304.1.5Log表 304.1.6LogClick表 304.1.7Imagebook表 304.1.8Visitor表 31第5章系統(tǒng)詳細設計 325.1系統(tǒng)結(jié)構(gòu)圖 325.1.1系統(tǒng)后臺代碼結(jié)構(gòu)圖 325.1.2系統(tǒng)包圖 325.1.3系統(tǒng)前臺頁面設計代碼結(jié)構(gòu)圖 335.2系統(tǒng)功能設計 335.1.2評論管理(RemarkManagement) 335.2.2首頁(Homepage)用例分析 355.2.3點擊(ClickNum)用例分析 38第6章系統(tǒng)部分功能測試 406.1測試目的 406.2系統(tǒng)測試用例 406.2.1評論管理測試用例及結(jié)果 406.2.2首頁測試用例及結(jié)果 426.2.3點擊率測試用例及結(jié)果 44第7章總結(jié) 467.1經(jīng)驗總結(jié) 467.2遇到的問題和不足 467.3總結(jié) 47參考文獻 48致謝 49第1章緒論1.1研究背景及意義Internet的普及和應用使人們的現(xiàn)代生活方式發(fā)生了深刻的變化,隨著Web技術(shù)的高速發(fā)展,博客這一新的名詞已經(jīng)深入到網(wǎng)絡的每個角落,人們從原來的只能看Web內(nèi)容過渡到了不僅是內(nèi)容的瀏覽者,同時也是內(nèi)容的發(fā)布者。博客是繼電子郵件、網(wǎng)絡論壇、即時通訊之后出現(xiàn)的第四種網(wǎng)絡交流載體。博客,又譯為網(wǎng)絡日志、部落格或部落閣等,是一種通常由個人管理、不定期張貼新的文章的網(wǎng)站。博客上的文章通常根據(jù)張貼時間,以倒序方式由新到舊排列。許多博客專注在特定的課題上提供評論或新聞,其他則被作為比較個人的日記。一個典型的博客結(jié)合了文字、圖像、其他博客或網(wǎng)站的鏈接、及其它與主題相關(guān)的媒體。能夠讓讀者以互動的方式留下意見,是許多博客的重要要素。博客于2000年前后興起,成為繼個人主頁、BBS(BulletinBoardSystem)之后互聯(lián)網(wǎng)公眾交流的新平臺,是網(wǎng)絡時代的個人“讀者文摘”,具有“零機制、零技術(shù)、零成本、零編輯、零形式”的使用特征。博客作為一種簡單的個人信息交流工具,其主要特點表現(xiàn)在3個方面:更新快、簡單明了、個性化。博客通常是由簡短且經(jīng)常更新的博文所構(gòu)成的,這些博文都是按照年份和日期倒序排列,能按照時間、標題瀏覽。近兩年,在國內(nèi)互聯(lián)網(wǎng)用戶中得到迅速傳播,并受到了廣泛的歡迎。目前,使用人群主題更久多元化,博客服務商群雄逐鹿、博客資源爭奪白熱化。博客的興起是進行網(wǎng)絡交流的又一個新事物。隨著專業(yè)化的博客網(wǎng)站大量興起,必將有利于增強各專業(yè)學術(shù)的交流,也將成為各專業(yè)信息采集的特色資源庫。博客不但秉承了個人網(wǎng)站的自由精神,也開拓和激發(fā)了創(chuàng)造的新模式,能張揚人的個性,從這個意義上來說,博客將會變得越來越普及,也越來越為更多人接受。1.2國內(nèi)外博客現(xiàn)狀比較1.2.1博客作者的性別圖1-1國外與國內(nèi)博主性別分布圖由圖1-1可以看出,全球情況來看,66%的博主為男性,34%為女性;中國情況來看,博客狀況的男女比例與全球情況嚴重不一致。1.2.2博客已經(jīng)不是新事物圖1-2是否是第一個博客及使用博客時間由圖1-2可以看到,大概一半的人擁有不止一個博客,而超過80%的人寫博客超過了1年。因此我們可以看到,博客已經(jīng)成為互聯(lián)網(wǎng)一種基礎(chǔ)設施。1.2.3寫博客的目的圖1-3國外和國內(nèi)寫博客的原因由圖1-3可以看出開發(fā)博客的主要目的是為了表達個人情感。1.2.4關(guān)于博客與傳統(tǒng)媒體圖1-4博客與傳統(tǒng)媒體1.2.5博客在中國的公信力圖1-5博客在中國的公信力由圖1-5可看出博客在中國的公信力還不夠。1.2.6總結(jié)由以上信息可以得出如下結(jié)論:1.大多數(shù)博客作者比較年輕,男性居多,大學生占有比較大的比例。2.中國的博客現(xiàn)在相對全球,尤其是美國,非常落后。3.在中國應該更多地去推廣高效的RSS閱讀方式。4.大多數(shù)人寫博客只是為了分享心情與心得。5.博客將會成為一個人的互聯(lián)網(wǎng)標識。1.3研究的主要內(nèi)容博客系統(tǒng)主要的對象有訪客和用戶,它包括訪客進行注冊、搜索日志/博客/用戶、查看日志、進行評論、查看日志/博客點擊率和相冊等;而用戶則登陸到本系統(tǒng),進行搜索日志/博客/用戶、日志管理(對日志進行增刪改查)、評論管理(對評論進行增刪改查)、個人/博客信息管理(查看或修改信息)、相冊管理(對相冊進行增刪改查)、日志/博客點擊率和相冊等。1.4本文的組織第1章介紹研究對象,課題背景;第2章說明了所使用的技術(shù)及其配置,編程語言;第3章敘述了系統(tǒng)的需求分析;第4章概要介紹了系統(tǒng)的整體結(jié)構(gòu)設計;第5章概要介紹了系統(tǒng)的詳細設計;第6章概要介紹了系統(tǒng)的測試設計和結(jié)果;第7章通過謝詞向幫助過我的人表示謝意和介紹系統(tǒng)制作時候用到參考文獻。
第2章相關(guān)技術(shù)和配置2.1MyEclipseEclipse是一個可擴展的、基于Java的和開源的集成開發(fā)環(huán)境。對其而言,它是一個可被開發(fā)者定制的應用骨架和一組服務,其強大的地方在于建立在不同的開發(fā)需求下,它可以通過安裝不同的插件來建立不同的開發(fā)環(huán)境以滿足其對應的開發(fā)需求。另外Eclipse是一個給人免費下載其源代碼的開放源代碼項目,然后在下載到的源代碼的基礎(chǔ)上根據(jù)自己的需要去開發(fā)自己的功能插件。MyEclipse是一個Eclipse支持下的J2EE開發(fā)插件,功能十分強大,具備完美的編碼、調(diào)試、測試和發(fā)布功能并完整支持Struts、Spring和Hibernate等框架技術(shù)。MyEclipse插件基本上涵蓋了眾多Eclipse插件的功能,能滿足我們的各種應用需求,基本上是安裝了它就無須其他插件。甚至可以這樣理解,MyEclipse就是一個比較完備的、功能十分強大的開發(fā)環(huán)境。2.2S2SH2.2.1Struts2Struts2是一個web應用框架。它不是一個Struts的新的發(fā)布版本,而是一個全新的框架。Struts2是第二代基于\o"Model-View-Controller"Model-View-Controller
(MVC)模型的web應用框架。Struts2是java企業(yè)級web應用的可擴展性的框架。它是WebWork和Struts社區(qū)合并后的產(chǎn)物。這一版本的Struts2聲稱,Struts2會接近于原先版本Struts,并且會更容易使用。struts2沒有繼承struts1的血統(tǒng),而是繼承了webwork的血統(tǒng)[1]。2.2.2SpringSpring框架是一個基于Java語言的開放源代碼的應用程序框架,其主要目標是解決J2EE企業(yè)應用程序開發(fā)的復雜度過高的問題。應用復雜度的提高往往意味著開發(fā)周期的延長和開發(fā)成本的上升,為了解決這一問題,Spring框架提供了統(tǒng)一的應用程序架構(gòu)方式,以及大量的中間層功能模塊,能夠極大簡化J2EE的開發(fā),同時提高企業(yè)應用程序的靈活性,使開發(fā)者能夠更輕松地實現(xiàn)輕量級、可擴展的企業(yè)應用架構(gòu)。Spring體系架構(gòu)如下圖所示。SpringCore提供了基于依賴注入技術(shù)的構(gòu)件組裝機制,是整個框架的基礎(chǔ);SpringAOP支持面向方面編程,為構(gòu)件提供統(tǒng)一的事務、日志、安全管理等服務;SpringORM負責集成Hibernate;SpringDAO提供了一系列的數(shù)據(jù)庫訪問控制工具;SpringWebMVC支持基于MVC模式的Web應用程序開發(fā)。圖2-1為Spring的架構(gòu)組件圖。圖2-1Spring架構(gòu)組件圖2.2.3HibernateHibernate是一個基于Java的開放源代碼的持久化中間層技術(shù),它通過對JDBC進行輕量級的封裝,不僅提供了對象關(guān)系映射服務,而且還提供了數(shù)據(jù)查詢和數(shù)據(jù)緩存功能。利用Hibernate我們可以安裝Java的基本語義進行持久層開發(fā),使用完全面向?qū)ο蟮牟樵冋Z言(HQL)操作數(shù)據(jù)庫,使開發(fā)人員把主要精力集中在業(yè)務層上。Hibernate的基礎(chǔ)代碼包含POJO類文件和Hibernate的配置文件、Hibernate的映射文件。配置文件名默認為hibernate.cfg.xml,它通常會配置持久層框架的如下信息:數(shù)據(jù)庫連接JDBC、底層數(shù)據(jù)庫方言等。POJO類就是數(shù)據(jù)庫表所對應的域模型對象,它通常只包含get/set方法。映射文件用來定義要持久化的對象,在這個文件中要描述持久化對象的變量屬性和表字段的對應和對象與對象之間、表與表之間的對應關(guān)系[8]。2.2.4Struts2+Spring+Hibernate的整合S2SH的架構(gòu)圖如圖2-2:圖2-2S2SH架構(gòu)圖S2SH架構(gòu)工作流程為:通過JSP頁面實現(xiàn)交互界面,負責傳遞請求和接受相應;在表示層引入Struts2用戶請求經(jīng)由控制器Struts2中的Filterdispatcher處理后,用戶數(shù)據(jù)會傳遞給Action然后由Action類通過業(yè)務層Spring的LoC容器訪問持久層Hibernate的DAO,由DAO負責與底層數(shù)據(jù)庫的交互,最后再將結(jié)果返回JSP頁面進行顯示。在S2SH中Spring處于核心地位。向上整合Struts2,向下整合Spring。Spring充分利用Ioc容器的特性和功能,通過配置文件,將專注于控制業(yè)務邏輯組件和結(jié)果視圖的Action、專注于業(yè)務邏輯實現(xiàn)的業(yè)務邏輯對象(BusinessObject,BO)、專注于數(shù)據(jù)底層持久化操作的數(shù)據(jù)訪問對象(DAO)、底層數(shù)據(jù)庫內(nèi)存鏡像的會話工廠(SessionFactory)等組件統(tǒng)一在其管理之下,統(tǒng)一管理這些組件生命周期的各個階段,并利用其依賴注入功能,實現(xiàn)可配置編碼的耦合方式,實現(xiàn)Action與BO、BO與DAO、DAO與SessionFactory的低耦合,使得系統(tǒng)具有良好的解耦性,從而保證利用S2SH開發(fā)的應用系統(tǒng)在重構(gòu)時不會發(fā)生“牽一發(fā)而動全身”的效果,提高了系統(tǒng)的可擴展性、可維護性和可復用性[4]。2.3ApacheApache是一種開放源代碼的Web應用服務器。Apache作為自由軟件之一,是由許許多多的自由開發(fā)人員投入大量的時間和精力來實現(xiàn)并逐步完善。盡管從第一個版本開發(fā)以來,不斷有新的漏洞被發(fā)現(xiàn),但由于其OpenSource(開放源代碼)的特點,漏洞總能很快被修補,因此,總的來說,其安全性還是相當?shù)母叩?,使用也是最普遍的[9]。2.4TomcatTomcat是一個免費開源的Servlet容器,它是由Apache基金會Jakarta項目中的一個核心項目,由Apache、Sun和其他一些公司及個人共同開發(fā)而成。Tomcat不僅是一個Servlet容器,它也具有傳統(tǒng)的Web服務器的功能,如處理HTML頁面,簡單的域名管理等。但是與Apache相比,它處理靜態(tài)HTML文件的能力遠不如Apache。那么在大多數(shù)企業(yè)應用中將Tomcat和Apache整合在一起,讓Apache處理靜態(tài)HTML文件,而Tomcat處理動態(tài)JSP文件和Servlet,這樣可以發(fā)揮各自所長[9]。2.5FCKEditor2.5.1FCKeditor簡介FCKeditor是一種功能強大的開源在線文本編輯器(DHTMLeditor),在Web開發(fā)中使用FCKeditor可以實現(xiàn)類似微軟Word桌面文本編輯器的許多強大功能。FCKeditor的應用現(xiàn)在已經(jīng)很廣泛,在開發(fā)論壇、Blog、新聞發(fā)布、內(nèi)容管理等系統(tǒng)都要使用到FCKeditor。FCKeditor支持當前流行的瀏覽器,主要有IE515+,Firefox110+,Mozilla113+與Netscape7+等。FCKeditor是輕量級的,使用非常方便,不必在客戶端進行任何方式的安裝。2.5.2FCKeditor配置1.安裝FCKEditor。將FCKeditor_2.6.3目錄中的fckeditor拷貝到工程中,如圖2-3所示。圖2-3WebRoot目錄中的fckeditor2.導入FCKEditor需要的jar包,由于本系統(tǒng)在導入S2SH的jar包時已經(jīng)導入了FCKEditor所需的jar包,故此處不用再添加jar包。3.在使用fckeditor的頁面導入fckeditor標簽庫,其代碼為:<%@tagliburi=""prefix="FCK"%>代碼2-1fckeditor標簽庫在系統(tǒng)中的添加情況如圖2-4。圖2-4fckeditor標簽庫4.要設置FCKEditor的字體、工具條、表情等必須添加自定義配置文件,本系統(tǒng)添加的自定義文件命名為myconfig.js,此配置文件設置了FCKEditor的工具條、字體、字體大小,其代碼如代碼2-2。FCKConfig.ToolbarSets["myToolbar"]=[['Preview'],['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],['Bold','Italic','Underline','StrikeThrough'],['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],['Image','Table','Rule','Smiley','SpecialChar','PageBreak'],['FontFormat','FontName','FontSize'],['TextColor','BGColor'],['FitWindow'] //Nocommaforthelastrow.];FCKConfig.ToolbarSets["myToolbar2"]=[['Undo','Redo','-','RemoveFormat'], ['Bold','Italic','Underline','StrikeThrough'], ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],['Image','Smiley'],['FontName','FontSize'],['TextColor','BGColor'],//Nocommaforthelastrow.];FCKConfig.FontNames ='宋體;華文行楷;黑體;方正舒體;仿宋;楷體;Arial;ComicSansMS;CourierNew;Tahoma;TimesNewRoman;Verdana';FCKConfig.FontSizes='5px;10px;15px;20px;25px;30px;35px;40px;45px';代碼2-2myconfig.js文件5.將自定義的配置文件myconfig.js載入FCKEditor的配置文件fckeditor.js中,即修改fckeditor.js中FCKConfig.CustomConfigurationsPath屬性值,如代碼2-3。FCKConfig.CustomConfigurationsPath=FCKConfig.EditorPath+'myfckconfig.js';代碼2-3FCKConfig.CustomConfigurationsPath屬性值6.在FCKEditor中用戶可以進行上傳圖片,為保證上傳圖片的正確性和安全性,需修改其配置文件,具體步驟如下:(1)修改web.xml中的Connector和Struts2的配置,修改后如代碼2-4。<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> <servlet><servlet-name>Connector</servlet-name><servlet-class>com.zdnf.fckeditor.ConnectorServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>Connector</servlet-name><url-pattern>/user/fckeditor/editor/filemanager/connectors/*</url-pattern></servlet-mapping>代碼2-4web.xml配置(2)在src根目錄下添加配置文件perties,如圖2-5。圖2-5src目錄下的perties(3)在perties中輸入代碼2-5即可上傳圖片。connector.userActionImpl=net.fckeditor.requestcycle.impl.UserActionImplconnector.userPathBuilderImpl=com.zdnf.fckeditor.UserPath代碼2-5perties7.若上傳的圖片名字有中文,則會出現(xiàn)亂碼,所以仍需進一步對其進行配置解決上次中文名字圖片出現(xiàn)的亂碼問題,其配置如下:(2)在src中新建com.zdnf.fckeditor包,并在該包中新建ConnectorServlet.java類,如圖2-6。圖2-6src目錄下的ConnectorServlet.java(3)找到ReferenceLibraries包中的java-core里的ConnectorServlet.class,如圖2-6將該類中的的內(nèi)容復制放到剛才新建的ConnectorServlet.java中,找到代碼2-6,如圖2-7,將其修改為代碼2-7,如圖2-8。upload.setHeaderEncoding(request);代碼2-6ConnectorServlet.classupload.setHeaderEncoding("UTF-8");代碼2-7ConnectorServlet.class圖2-7java-core下的ConnectorServlet.class圖2-8ConnectorServlet.java(3)在ConnectorServlet.java中找到圖2-9,將其改成圖2-10。圖2-9ConnectorServlet.java圖2-10ConnectorServlet.java(4)打開web.xml,將<servlet>標簽中配置改成圖2-11所示,即可解決上傳圖片的問題。圖2-11web.xml8.在上傳圖片處,可以創(chuàng)建文件夾存放圖片,若創(chuàng)建中文文件夾則會出現(xiàn)亂碼問題,需要修改ConnectorServlet.java中的配置。找到ConnectorServlet.java中的代碼2-8,并將其修改為代碼2-9即可解決亂碼問題。StringnewFolderStr=UtilsFile.sanitizeFolderName(request .getParameter("NewFolderName"));代碼2-8ConnectorServlet.javaStringnewFolderStr=UtilsFile.sanitizeFolderName(newString(request.getParameter("NewFolderName").getBytes("ISO8859-1"),"UTF-8"));代碼2-9ConnectorServlet.java2.6Mysql數(shù)據(jù)庫介紹和配置2.6.1Mysql數(shù)據(jù)庫的介紹MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),是瑞典MySQLAB公司開發(fā)并推廣使用。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為開發(fā)使用的數(shù)據(jù)庫。與SQLServer、DB2、Oracle等其他的大型數(shù)據(jù)庫相比,MySQL自有它的不足之處,如功能有限(MySQLCluster的功能和效率都相對比較差)、規(guī)模小等,但是這絲毫也沒有減少它受歡迎的程度。對于一般的個人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開放源碼軟件,因此可以大大降低總體擁有成本。2.6.2Mysql在Myeclipse中的配置在Myeclipse中配置Mysql的過程如下:1.首先打開MyEclipse在工具欄上依次點擊Window->OpenPerspective->MyEclipseDatabaseExplorer,如圖2-12,點擊后進入圖2-13所示界面。圖2-12在Myeclipse中配置Mysql圖2-13在Myeclipse中配置Mysql2.在圖2-13的左側(cè)空白處單擊右鍵選擇new,如圖2-14,點擊后出現(xiàn)一對話框如圖2-15。圖2-14在Myeclipse中配置Mysql圖2-15在Myeclipse中配置Mysql3.在Drivername后的文本框填入你要的數(shù)據(jù)庫名字(本系統(tǒng)為myblog),CoonectionURL填上數(shù)據(jù)庫地址(最后那個test是你要連接的數(shù)據(jù)庫),在Username,Password依次填上用戶名,密碼,點擊DriverJARs右面的AddJARs選擇需要數(shù)據(jù)庫驅(qū)動,然后點擊Finish,如圖2-16。圖2-16在Myeclipse中配置Mysql4.這時我們在左面會看到新建的數(shù)據(jù)庫myblog,我們右鍵點擊新建的數(shù)據(jù)庫選擇Openconnection,如圖2-17。圖2-17在Myeclipse中配置Mysql5.選擇Openconnection后彈出如圖2-18所示的對話框,輸入密碼并點擊OK,若在左邊看到數(shù)據(jù)庫myblog中的表則表示連接成功,如圖2-19。圖2-18在Myeclipse中配置Mysql圖2-19在Myeclipse中配置Mysql6.lipse工具欄上依次點擊Window->OpenPerspective->MyEclipseJavaEnterprise如圖2-20即可回到Java工程中,如右圖2-21。圖2-20在Myeclipse中配置Mysql圖2-21在Myeclipse中配置Mysql7.據(jù)庫連接的項目右鍵BuildPath->AddLibraries...如圖2-22,在彈出的對話框中點擊Next,如圖2-23。圖2-22在Myeclipse中配置Mysql圖2-23在Myeclipse中配置Mysql8.對話框中點擊右邊的UserLibraies...如圖2-24,如下左圖,在彈出的對話框中點擊右邊的New...,如圖2-25。圖2-24在Myeclipse中配置Mysql圖2-25在Myeclipse中配置Mysql9.對話框中輸入名字,如圖2-26,點擊OK后看到新增加的驅(qū)動包出現(xiàn)在列表中,如圖2-27。圖2-26在Myeclipse中配置Mysql圖2-27在Myeclipse中配置Mysql10.右邊的AddJARs...,加入所需的驅(qū)動,點擊OK,連接成功。
第3章系統(tǒng)需求分析3.1系統(tǒng)概述該系統(tǒng)是基于S2SH技術(shù)實現(xiàn)用戶和訪客對博客進行訪問和管理的功能。用戶可以登錄本系統(tǒng)進行搜索用戶/博客/博文、博文管理、評論管理、相冊管理、信息管理等功能;若要進行搜索則可以在輸入框中輸入要搜索的關(guān)鍵字;若要發(fā)表日志,則可以進入博文管理中的寫博文而進行博文發(fā)表等等。而訪客可以通過本系統(tǒng)進行搜索、日志查看、信息查看、評論等功能,若訪客要進行發(fā)表博文,必須先注冊,包括個人的主要信息,如用戶名、昵稱、Email、手機號碼等信息;訪客注冊成功后即可登錄本系統(tǒng)進行用戶的相關(guān)操作。本系統(tǒng)開發(fā)的基本要求與功能是實現(xiàn)博客系統(tǒng)有關(guān)數(shù)據(jù)的管理與操作處理,基于MySql數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)管理使該軟件有更優(yōu)異的性能。本系統(tǒng)的基本數(shù)據(jù)流動主要有博客信息、用戶信息、博文信息、評論信息等的輸入,以及用戶提出的對信息的查詢和其它要求所產(chǎn)生的數(shù)據(jù)輸出。數(shù)據(jù)的輸入與輸出處理流程都依靠數(shù)據(jù)庫的支持。3.2功能描述表3-1首頁功能描述功能編號功能名稱描述參與者FC001評論管理用戶查看、添加、刪除個人博文的評論,訪客查看、添加博文的評論用戶、訪客FC002首頁用戶或訪客可進行搜索、查看最熱博客、最熱相冊等。用戶、訪客FC003點擊率用戶或訪客查看博文或博客的點擊率用戶、訪客FC004訪客注冊訪客填寫相關(guān)信息成為系統(tǒng)用戶訪客FC005用戶登錄/退出用戶登錄進入/退出本系統(tǒng)用戶FC006搜索管理用戶或訪客搜索博文、用戶和博客用戶、訪客FC007用戶個人信息管理用戶根據(jù)實際情況對自己的個人信息進行管理用戶FC008用戶博客信息管理用戶根據(jù)實際情況對自己的博客信息進行管理用戶FC009相冊管理用戶查看、添加、刪除個人相冊,訪客查看用戶的相冊用戶、訪客FC010最近訪客用戶或訪客查看博客的最近訪客用戶、訪客3.3系統(tǒng)用例圖用例圖表述了各種外部執(zhí)行者與系統(tǒng)所提供的用例之間的連接。本系統(tǒng)用例圖如圖3-1所示:圖3-1用例圖3.4功能描述3.4.1功能1評論管理表3-2評論管理功能描述功能號FC001功能名稱評論管理角色訪客、用戶功能描述用戶查看、添加、刪除個人博文的評論,訪客查看、添加博文的評論1.子用例1添加評論表3-3添加評論功能描述功能號FC0010功能名稱添加評論角色訪客、用戶功能描述訪客、用戶添加某博文的評論。參與者訪客、用戶前置條件訪客或用戶進入查看博文頁面后置條件用戶若成功評論,則顯示評論的詳細內(nèi)容;基本路徑(1)用戶或訪客進入查看博文頁面;(2)訪客或用戶在博客文界面的評論輸入框中輸入評論信息;(3)訪客或用戶點擊確定;(4)系統(tǒng)顯示評論成功,并顯示評論。擴展點無2.子用例2查看評論表3-4查看評論功能描述功能號FC0011功能名稱查看評論角色訪客、用戶功能描述訪客、用戶查看某博文的評論。參與者訪客、用戶前置條件訪客或用戶進入查看博文頁面后置條件無基本路徑(1)用戶或訪客進入某用戶的博文列表;(2)點擊某博文的鏈接進入查看博文頁面。擴展點無3.子用例3刪除評論表3-5刪除評論功能描述功能號FC0013功能名稱刪除評論角色用戶功能描述用戶刪除其他用戶或訪客對其博文的評論參與者用戶前置條件用戶必須是已登陸的用戶后置條件用戶刪除成功后,該評論不出現(xiàn)在對應博文的評論列表中?;韭窂剑?)用戶進入查看博文頁面;(2)用戶選擇要刪除的評論信息;、(3)點擊刪除即可刪除該評論。擴展點用戶登錄時輸入的用戶名或密碼錯誤,提示并跳轉(zhuǎn)登錄頁面3.4.2功能2首頁表3-6首頁功能描述功能號FC002功能名稱首頁角色用戶、訪客功能描述用戶或訪客進入系統(tǒng)首頁,可進行搜索、查看最熱博文、最新評論、最新博文/相冊、最近訪客1.子用例1訪客訪問首頁表3-7訪客訪問首頁功能描述功能號FC0021功能名稱訪客訪問首頁角色訪客功能描述訪客進入系統(tǒng)首頁,可進行搜索、查看最熱博文、最新評論、最新博文/相冊參與者訪客前置條件無后置條件無基本路徑(1)訪客進入本系統(tǒng)首頁;(2)訪客選擇進行搜索、查看最熱博文、最新評論、最新博文/相冊功能;(3)若選擇搜索,則在輸入框輸入搜索信息進入搜索結(jié)果頁面;(4)若選擇查看最熱博客/博文或最新博文/相冊功能,則在首頁點擊相應的鏈接;(5)進入對應的頁面。擴展點無2.子用例2用戶訪問首頁表3-8用戶訪問首頁功能描述功能號FC0022功能名稱用戶訪問首頁角色用戶必須是已登陸的用戶功能描述用戶進入系統(tǒng)首頁,可進行搜索、查看最熱博文、最新評論、最新博文/相冊和最近訪客參與者用戶前置條件用戶必須是已登陸的用戶后置條件無基本路徑(1)訪客進入本系統(tǒng)首頁;(2)訪客選擇進行搜索、查看最熱博文、最新評論、最新博文/相冊功能;(3)若選擇搜索,則在輸入框輸入搜索信息進入搜索結(jié)果頁面;(4)若選擇查看最熱博客/博文或最新博文/相冊功能,則在首頁點擊相應的鏈接進入對應的頁面;(5)若選擇查看最近訪客,則點擊訪客的鏈接即可轉(zhuǎn)到該訪客的博客首頁。擴展點用戶登錄時輸入的用戶名或密碼錯誤,提示并跳轉(zhuǎn)登錄頁面3.4.3用例3點擊率表3-9點擊率功能描述功能號FC003功能名稱點擊率角色訪客、用戶功能描述訪客和用戶參與者訪客、用戶前置條件訪客和用戶進入本系統(tǒng)后置條件無基本路徑(1)用戶或訪客進入本系統(tǒng);(2)用戶進入首頁或查看博文頁面;(3)用戶即可查看博文或博客的點擊率。擴展點用戶登錄時輸入的用戶名或密碼錯誤,提示并跳轉(zhuǎn)登錄頁面3.5功能活動圖3.5.1評論管理活動圖1.用戶評論管理活動圖圖3-2用戶評論管理活動圖2.訪客評論管理活動圖圖3-3訪客評論管理活動圖3.5.2首頁活動圖1.用戶訪問首頁活動圖圖3-4用戶訪問首頁活動圖2.訪客訪問首頁活動圖圖3-5訪客訪問首頁活動圖3.5.3點擊率活動圖圖3-6點擊率活動圖3.6術(shù)語表表3-10術(shù)語表術(shù)語英語名稱定義和信息訪客Visitor在本系統(tǒng)中具有瀏覽、搜索、查看博文/博客等的人員用戶User在本系統(tǒng)中已注冊的人員點擊率ClickNum表示瀏覽博文或博客的人數(shù)最近訪客NearlyVisitor博客的最近訪問者最熱博客HotBlog點擊率最高的博客最熱博文HotLog點擊率最高的博文
第4章系統(tǒng)概要設計4.1系統(tǒng)架構(gòu)設計本系統(tǒng)采用MVC三層結(jié)構(gòu),即Model數(shù)據(jù)層、View界面層、Control控制層。其中界面層依賴于控制層,控制層調(diào)用數(shù)據(jù)層。1.View界面層表示層是用戶與系統(tǒng)交互的界面,負責獲取用戶的請求和信息,展示系統(tǒng)的操作結(jié)果給用戶。2.Control控制層控制層是本系統(tǒng)的核心,它控制整個系統(tǒng)的運行。它主要負責接收用戶輸入的信息,判斷用戶的訪問權(quán)限,調(diào)用數(shù)據(jù)執(zhí)行相應的查看及管理操作,并返回相關(guān)信息。3.Model數(shù)據(jù)層數(shù)據(jù)層主要為為界面層與控制層提供數(shù)據(jù)支持。在本系統(tǒng)中Model層主要用Hibernate框架來實現(xiàn),而使用Hibernate框架需要編寫PO類,并使用PO類去產(chǎn)生數(shù)據(jù)庫表,本系統(tǒng)使用的PO類如表4-1所示:表4-1系統(tǒng)PO類User.java用戶PO類BlogInfo.java博客信息PO類BlogClick.java博客點擊率PO類Remark.java評論PO類Log.java博文PO類LogClick.java博文點擊率PO類Imagebook.java相冊PO類Visitor.java訪客PO類除了PO類之外,還需為其配上一個映射文件,通常將這個映射文件命名為:類名.hbm.xml,
并與這個類放置在同一個目錄下方能訪問數(shù)據(jù)庫,Remark.hbm.xml的具體內(nèi)容如代碼4-1所示:<hibernate-mapping><classname="com.zdnf.model.Remark"table="remark"catalog="blog"><idname="remarkId"type="java.lang.Integer"><columnname="RemarkID"/><generatorclass="increment"/></id><propertyname="remarkerName"type="java.lang.String"><columnname="RemarkerName"length="200"not-null="true"/></property><propertyname="logId"type="java.lang.Integer"><columnname="LogID"length="19"not-null="true"/></property><propertyname="remarkDetail"type="java.lang.String"><columnname="RemarkDetail"length="200"not-null="true"/></property><propertyname="remarkTime"type="java.sql.Timestamp"><columnname="RemarkTime"length="19"not-null="true"/></property></class></hibernate-mapping>代碼4-1Remark.hbm.xmlMVC架構(gòu)圖如圖4-1所示。圖4-1MVC架構(gòu)圖4.2系統(tǒng)關(guān)鍵抽象和類圖4.2.1系統(tǒng)關(guān)鍵抽象從領(lǐng)域知識、需求描述、術(shù)語表中可以提取出中如圖4-2的關(guān)鍵抽象。圖4-2系統(tǒng)關(guān)鍵抽象4.2.2系統(tǒng)類圖在關(guān)鍵抽象的基礎(chǔ)上,添加了個實體類的屬性,形成如圖4-3所示的系統(tǒng)類圖(實體類圖)。圖4-3系統(tǒng)類圖4.3數(shù)據(jù)庫設計4.3.1UserInfo表表4-2UserInfo表序號字段名稱數(shù)據(jù)類型備注1username博主賬號varchar(20)主鍵2nickname昵稱varchar(20)非空3password密碼varchar(20)非空4question安全問題varchar(50)非空5answer安全回答varchar(50)非空5headphoto頭像varchar(1000)可空6sex性別char(2)非空7mail郵箱varchar(40)可空8age年齡int可空9tel電話varchar(20)可空10QQQQvarchar(20)可空11hobby愛好varchar(200)可空12description個人描述varchar(200)可空4.3.2BlogInfo表表4-3BlogInfo表序號字段名稱數(shù)據(jù)類型備注1username博主賬號varchar(20)非空,主鍵2BlogName博客名varchar(20)非空3BlogDescrip博客描述varchar(200)可空4ClickNum點擊量int非空,默認為04.3.3BlogClick表表4-4BlogClick表序號字段名稱數(shù)據(jù)類型備注1clickIp博客點擊率IPvarchar(255)非空,主鍵2blogUserName博客名varchar(20)非空3blogclikId博客點擊率int非空3clickDate點擊日期date非空4.3.4Remark表表4-5Remark表序號字段名稱數(shù)據(jù)類型備注1RemarkID評論編號int主鍵,自動增長2RemarkerName評論人昵稱varchar(20)非空3LogID日志編號int非空4RemarkDetail評論內(nèi)容varchar(200)非空5RemarkTime日期datatime非空4.3.5Log表表4-6Log表序號字段名稱數(shù)據(jù)類型備注1LogID日志編號int主鍵,自動增長2username博主賬號varchar(20)非空3LogTitle日志標題varchar(50)非空4LogDetail日志內(nèi)容varchar(4000)非空5LogTime日志日期datatime(20)非空6LogClicknum日志點擊率int非空7LogType類型(日志/草稿)bit非空,若為發(fā)表日志則為1,若為草稿則為04.3.6LogClick表表4-7LogClick表序號字段名稱數(shù)據(jù)類型備注1ClickId日志點擊率IDint主鍵,非空2ClickIp點擊IPvarchar(255)可空3LogID日志IDint可空4ClickTime點擊日期date可空4.3.7Imagebook表表4-8Imagebook表序號字段名稱數(shù)據(jù)類型備注1ImageBookID相冊IDint主鍵,非空2username用戶名varchar(20)非空3imageBookName相冊名varchar(50)非空4uuidCode文件夾名Varchar(200)唯一,非空5imageBookDate相冊日期Datetime非空4.3.8Visitor表表4-9Visitor表序號字段名稱數(shù)據(jù)類型備注1viitId訪客IDint主鍵,非空2vistTime訪問時間varchar(20)非空3vistBlogusername被訪問的博主名字varchar(50)非空4vistorname訪客名字Varchar(200)非空
第5章系統(tǒng)詳細設計5.1系統(tǒng)結(jié)構(gòu)圖5.1.1系統(tǒng)后臺代碼結(jié)構(gòu)圖圖5-1系統(tǒng)后臺代碼結(jié)構(gòu)圖由圖5-1可以得出系統(tǒng)后臺代碼包括MVC模式中Control層和Model層所包括的相關(guān)代碼外,fckeditor、struts2配置等相關(guān)代碼也在此處。5.1.2系統(tǒng)包圖圖5-2系統(tǒng)后臺代碼結(jié)構(gòu)圖由圖5-2可以得出本系統(tǒng)的包圖包括常用的包之外,還要用到S2SH對應技術(shù)所需的包,如Struts2所要用到的Struts2Corelibraries包、Hibernate3.3CoreLibraries包等等。5.1.3系統(tǒng)前臺頁面設計代碼結(jié)構(gòu)圖圖5-3系統(tǒng)前臺頁面代碼設計結(jié)構(gòu)圖由圖5-3可看到系統(tǒng)前臺頁面的相關(guān)配置如css配置、圖片、js配置、頁面jsp的設計等都是放在此處。5.2系統(tǒng)功能設計5.2.1評論管理(RemarkManagement)1.用例分析(1)用戶在登陸界面輸入登陸信息,登陸成功則進入個人博客,登陸不成功則返回錯誤信息;(2)用戶在功能條中選擇博文,進入博文列表;(3)用戶點擊要查看的博文連接,則顯示博文和評論,再進行評論管理;(4)用戶界面通過信息控制類從用戶信息類中調(diào)出用戶所要查看的信息,并顯示出來。2.時序圖如圖5-4所示。圖5-4評論管理時序圖3.評論界面設計如圖5-5所示。圖5-5評論管理界面圖由圖5-5可以看到在同一個頁面內(nèi)集成了查看評論、添加評論等評論管理有關(guān)的功能,這樣的設計既可以讓用戶對此一目了然又可以方便用戶的使用。4.評論管理核心代碼。publicvoidaddRemark(Remarkremark){ this.getHibernateTemplate().save(remark); } publicList<Remark>queryRemarkByLogId(finalintlogId,finalPagepage){ returnthis.getHibernateTemplate().executeFind(newHibernateCallback(){ publicObjectdoInHibernate(Sessionsession) throwsHibernateException,SQLException{ Queryquery=session.createQuery("selectremarkfromRemarkremarkwhereremark.logId="+logId); query.setMaxResults(page.getEveryPage()); query.setFirstResult(page.getBeginIndex()); returnquery.list(); }}); }代碼5-1評論管理核心代碼5.2.2首頁(Homepage)用例分析1.用例分析(1)戶在登陸界面輸入登陸信息,登陸成功則進入個人博客首頁,登陸不成功則返回錯誤信息;訪客則直接進入首頁;(2)用戶或訪客在首頁選擇相應的功能進入其對應的頁面;(3)用戶界面通過信息控制類從用戶信息類中調(diào)出用戶所要查看的信息,并顯示出來。2.其時序圖如圖5-6。圖5-6首頁時序圖3.首頁界面設計如圖5-7所示。圖5-7首頁界面圖由圖5-7可以看到在系統(tǒng)的首頁包括搜索、最熱博客、最新博客等內(nèi)容,這樣的設計可以讓用戶對用戶及其動態(tài)有更深的了解。4.首頁核心代碼。 publicList<Log>queryByClicknum(){ returnthis.getHibernateTemplate().executeFind(newHibernateCallback(){ publicObjectdoInHibernate(Sessionsession) throwsHibernateException,SQLException{Queryquery=session.createQuery("selectlogfromLoglogorderbylog.logClicknumdesc"); query.setMaxResults(3); query.setFirstResult(0); returnquery.list(); }});} publicList<Log>queryByTime(){ returnthis.getHibernateTemplate().executeFind(newHibernateCallback(){ publicObjectdoInHibernate(Sessionsession) throwsHibernateException,SQLException{ Queryquery=session.createQuery("selectlogfromLoglogorderbyLogTimedesc"); query.setMaxResults(3); query.setFirstResult(0); returnquery.list(); } }); }publicList<Remark>queryRemarkByTime(){ returnthis.getHibernateTemplate().executeFind(newHibernateCallback(){publicObjectdoInHibernate(Sessionsession) throwsHibernateException,SQLException{ Queryquery=session.createQuery("selectremarkfromRemarkremarkorderbyremarkTimedesc"); query.setMaxResults(3); query.setFirstResult(0); returnquery.list(); }}); }代碼5-2首頁核心代碼5.2.3點擊(ClickNum)用例分析1.用例分析(1)用戶在登陸界面輸入登陸信息,登陸成功則進入個人博客首頁,登陸不成功則返回錯誤信息;訪客則直接進入首頁;(2)用戶或訪客在選擇查看博客或博文,進而查看對應的點擊率;(3)用戶界面通過信息控制類從用戶信息類中調(diào)出用戶所要查看的信息,并顯示出來。2.其時序圖如圖5-8。圖5-8點擊率時序圖3.點擊率界面設計如圖5-9所示。圖5-9點擊率界面圖由圖5-8可以看到在博文或博客顯示頁面上,有直接顯示該篇博文或博客的點擊率,用戶或訪客可以根據(jù)其點擊率高低進行選擇查看。4.點擊率核心代碼。 publicListqueryByLogId(finalintlogId,finalStringlogIP,finalDatelogTime){ returnthis.getHibernateTemplate().executeFind(newHibernateCallback(){ publicObjectdoInHibernate(Sessionsession) throwsHibernateException,SQLException{ Stringtime=newSimpleDateFormat("yyyy-MM-dd").format(logTime); Stringhql="selectlogclickfromLogclicklogclickwherelogclick.logId="+logId +"andlogclick.clickIp='"+logIP+"'" +"andlogclick.clickTime='"+time+"'"; Queryquery=session.createQuery(hql); returnquery.list(); } }); }代碼5-3點擊率核心代碼
第6章系統(tǒng)部分功能測試6.1測試目的軟件測試目的是盡可能發(fā)現(xiàn)并改正被測試軟件中的錯誤,提高軟件的可靠性。它是軟件生命周期中一項非常重要且非常復雜的工作,對軟件可靠性保證具有極其重要的意義。6.2系統(tǒng)測試用例6.2.1評論管理測試用例及結(jié)果1.評論管理測試用例(1)添加評論測試用例表6-1添加評論測試用例用例編號OA001原形描述添加評論用例目的檢測添加評論功能的完善性前提條件用戶能正常登錄本系統(tǒng)參與人員訪客、用戶子用例編號輸入操作步驟期望結(jié)果實測結(jié)果狀態(tài)OA001a這是篇好日志①進入添加評論界面②輸入相關(guān)信息③點擊確定評論成功,進入日志詳細頁面評論成功通過OA001b1232434OA001cGoodlogOA001d(什么都不輸入)評論失敗,系統(tǒng)提示“評論內(nèi)容不可以為空”評論失敗,系統(tǒng)提示“評論內(nèi)容不可以為空”(2)查看評論測試用例表6-2查看評論測試用例用例編號OA002原形描述查看評論用例目的檢測查看評論功能的完善性前提條件用戶能正常登錄本系統(tǒng)參與人員訪客、用戶子用例編號輸入操作步驟期望結(jié)果實測結(jié)果狀態(tài)OA002a無①進入查看日志界面②查看評論查看成功查看成功通過(3)刪除評論測試用例表6-3刪除評論測試用例用例編號OA003原形描述刪除評論用例目的檢測刪除評論功能的完善性前提條件用戶能正常登錄本系統(tǒng)參與人員訪客、用戶子用例編號輸入操作步驟期望結(jié)果實測結(jié)果狀態(tài)OA003a無①進入查看日志界面②點擊刪除評論刪除成功刪除成功通過2.評論管理測試結(jié)果圖6-1評論管理測試結(jié)果圖由圖6-1及結(jié)合以上測試用例可以看出,在添加、查看、刪除評論功能的測試中得到了測試用例中的預期的結(jié)果,評論管理中的功能均能正常的提供給用戶使用。6.2.2首頁測試用例及結(jié)果1.首頁測試用例(1)用戶訪問首頁測試用例表6-4用戶訪問首頁用例用例編號OA004原形描述首頁用例目的檢測首頁功能的完善性前提條件用戶能正常登錄本系統(tǒng)參與人員用戶子用例編號輸入操作步驟期望結(jié)果實測結(jié)果狀態(tài)OA004aDdd①進入首頁②在搜索欄輸入要搜索的信息③點擊搜索④點擊最熱博文⑤點擊最熱博客⑥點擊最新博客⑦點擊最新相冊⑧查看最近訪客搜索、查看成功搜索、查看成功通過OA004b搜索失敗,系統(tǒng)提示“沒有這個博客(博文/用戶)”;查看成功搜索失敗,系統(tǒng)提示“沒有這個博客(博文/用戶)”;查看成功(2)訪客訪問首頁測試用例表6-5訪客訪問首頁用例用例編號OA005原形描述首頁用例目的檢測首頁功能的完善性前提條件無參與人員訪客、用戶子用例編號輸入操作步驟期望結(jié)果實測結(jié)果狀態(tài)OA005a123tt①進入首頁②在搜索欄輸入要搜索的信息③點擊搜索④點擊最熱博文⑤點擊最熱博客⑥點擊最新博客⑦點擊最新相冊搜索、查看成功搜索、查看成功通過OA005b搜索失敗,系統(tǒng)提示“沒有這個博客(博文/用戶)”;查看成功搜索失敗,系統(tǒng)提示“沒有這個博客(博文
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工作實踐心得體會范文-文檔
- 大學境內(nèi)非學歷教育培訓項目合同
- 2025申報納稅服務合同
- 二零二五年度環(huán)保型工廠整體資產(chǎn)轉(zhuǎn)讓合同3篇
- 2025年度農(nóng)村土地承包經(jīng)營權(quán)租賃與農(nóng)業(yè)科技成果轉(zhuǎn)化合同
- 2025年度分手后共同債務重組與和解協(xié)議3篇
- 2025年度風力發(fā)電項目承包租賃合同3篇
- 二零二五年度文化創(chuàng)意產(chǎn)業(yè)借款合同范本3篇
- 二零二五年度人工智能產(chǎn)業(yè)合作合同模板3篇
- 2025年度建筑工程施工安全培訓三方合作協(xié)議3篇
- 2025年遼寧省大連市普通高中學業(yè)水平合格性考試模擬政治試題(一)
- 當代中國外交(外交學院)知到智慧樹章節(jié)測試課后答案2024年秋外交學院
- 干燥綜合征的護理查房
- 【MOOC】財務管理-四川大學 中國大學慕課MOOC答案
- 交通管理扣留車輛拖移保管 投標方案(技術(shù)方案)
- 期末 (試題) -2024-2025學年人教PEP版英語五年級上冊
- 期末 (試題) -2024-2025學年外研版(三起)(2024)英語三年級上冊
- 使用單位特種設備安全風險管控清單
- AAEM的應用機理
- 2018-2019學年第一學期西城小學三年級數(shù)學期末試題
- GB-T-12137-2015-氣瓶氣密性試驗方法
評論
0/150
提交評論