基于SSM框架的婚慶平臺設(shè)計與實現(xiàn)_第1頁
基于SSM框架的婚慶平臺設(shè)計與實現(xiàn)_第2頁
基于SSM框架的婚慶平臺設(shè)計與實現(xiàn)_第3頁
基于SSM框架的婚慶平臺設(shè)計與實現(xiàn)_第4頁
基于SSM框架的婚慶平臺設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本科論文目錄TOC\o"1-3"\h\u27288摘要 I27501Abstract II15004引言 1174651相關(guān)技術(shù) 3157031.1SSM框架簡介 3240061.2MySQL數(shù)據(jù)庫簡介 3123031.3MVC設(shè)計模式簡介 3229511.4本章小結(jié) 425562系統(tǒng)分析 516192.1功能需求 5274472.1.1用戶功能需求 5268812.1.2管理員功能需求 6316672.2非功能需求 10110382.3本章小結(jié) 108393系統(tǒng)設(shè)計 11124823.1總體設(shè)計 1127813.1.1平臺設(shè)計原則 1119433.1.2平臺功能結(jié)構(gòu) 1162053.1.3平臺體系結(jié)構(gòu) 1266543.2詳細設(shè)計 13248473.2.1數(shù)據(jù)庫設(shè)計 13124253.2.2核心功能設(shè)計 15304733.5本章小結(jié) 20235404系統(tǒng)實現(xiàn) 21159664.1開發(fā)環(huán)境 21297724.2開發(fā)規(guī)范 21186734.3數(shù)據(jù)庫實現(xiàn) 21322284.4核心功能實現(xiàn) 22173704.4.1用戶分享愛情故事 2228774.4.2用戶定制婚禮 23210444.4.3用戶預(yù)約 24110404.4.4管理員處理預(yù)約信息 26182644.4.5管理員查看數(shù)據(jù)統(tǒng)計 27113714.5本章小結(jié) 2810055系統(tǒng)測試 2934285.1測試計劃 2952375.2功能測試 29231875.3性能測試 31259155.4本章小結(jié) 348554結(jié)論 3516087致謝 3632079參考文獻 37摘要隨著人們生活水平的不斷提高,婚慶行業(yè)也在不斷發(fā)展,但是承辦婚禮的機構(gòu)普遍是以實體店為主,發(fā)展相對落后,并且隨著用戶數(shù)量的增加,用戶需求的變化,使得傳統(tǒng)的婚慶行業(yè)面臨了嚴峻的挑戰(zhàn),婚慶行業(yè)的信息化水平亟待提升。因此傳統(tǒng)婚慶已經(jīng)無法滿足現(xiàn)代婚慶行業(yè)的發(fā)展要求。本文針對當前存在的此種迫切需求開發(fā)了基于SSM框架的婚慶平臺。通過對婚慶行業(yè)的調(diào)研,并充分考慮人們對婚慶的需求因素,基于SSM框架進行平臺搭建,使用MySQL作為數(shù)據(jù)庫,以Tomcat為應(yīng)用服務(wù)器,開發(fā)實現(xiàn)了本婚慶平臺。用戶可以查看本平臺提供的婚慶相關(guān)資訊,可在平臺自主定制婚禮(包含主題、司儀、禮服和婚車4種類型服務(wù)),并完成預(yù)約操作。本平臺的搭建使婚慶業(yè)務(wù)的可操作性、直觀性大大增強,具有方便、快捷等特點,很大程度上解決了傳統(tǒng)婚慶行業(yè)消費不透明的現(xiàn)象,提升了市場競爭力。本婚慶平臺采用MVC設(shè)計模式開發(fā),具有功能結(jié)構(gòu)清晰且靈活性強的優(yōu)點。經(jīng)過設(shè)計實現(xiàn)和系統(tǒng)測試,本婚慶平臺各個功能均正常運行,可以滿足目前婚慶行業(yè)信息化的需要。關(guān)鍵詞:婚慶平臺;SSM框架;定制婚禮AbstractWiththecontinuousimprovementofpeople'slivingstandards,theweddingindustryalsohasagrowing,butundertakeweddingagencyaregenerallystoreisgivenpriorityto,thedevelopmentisrelativelybackward,andwiththeincreaseofthenumberofusers,thechangeofuserrequirements,makethetraditionalweddingindustryisfacingtheseverechallenge,theweddingindustryinformatizationleveltoascend.Therefore,thetraditionalweddinghasbeenunabletomeetthedevelopmentrequirementsofthemodernweddingindustry.ThispaperdevelopsaweddingcelebrationplatformbasedonSSMframeworkaccordingtothecurrenturgentneeds.Basedonthesurveyoftheweddingindustry,andtakingpeople'sdemandforweddingintofullconsideration,theplatformwasbuiltbasedonSSMframework.MySQLwasusedasthedatabaseandTomcatwasusedastheapplicationservertodevelopandrealizetheweddingplatform.Userscanviewtheweddingrelatedinformationprovidedbytheplatform,customizethewedding(includingtheme,masterofceremonies,weddingdressandweddingcarservices)ontheplatform,andcompletethereservationoperation.Theconstructionofthisplatformmakestheweddingserviceoperable,intuitivegreatlyenhanced,withthecharacteristicsofconvenience,speedandsoon,toalargeextenttosolvethetraditionalweddingindustryconsumptionopaquephenomenon,improvethemarketcompetitiveness.ThisweddingplatformisdevelopedbyMVCdesignpattern,whichhastheadvantagesofclearfunctionalstructureandstrongflexibility.Afterdesignandimplementationandsystemtesting,allfunctionsoftheweddingplatformarerunningnormallyandhavebeenputintouse.Theactualusehasprovedthatthisweddingcelebrationplatformisstableinoperationandrichinfunctions,whichcanmeettheneedsoftheweddingcelebrationindustryinformatization.Keywords:weddingplatform;SSMframework;customizedwedding引言在中國,人們通常都對自己的婚禮十分重視,希望能有一個專屬于自己的難忘且浪漫的婚禮。婚慶行業(yè),又名婚慶消費行業(yè),是為人們在舉行婚禮時提供各種服務(wù)的一個行業(yè)?,F(xiàn)代意義上的婚慶行業(yè)進入中國市場還不到20年,對于中國來說婚慶行業(yè)是一個新興行業(yè)REF_Ref29500\w\h[1],具有很大的商機和廣闊的發(fā)展空間?;閼c涉及很多種不同類型的服務(wù),例如婚禮的主題,婚禮負責主持的司儀,結(jié)婚時穿的婚紗禮服,迎親時的婚車,為新人化妝的化妝師團隊,為新人負責錄像和攝影的影像團隊等等?;閼c行業(yè)的前景樂觀,未來發(fā)展會更加多元化:婚慶行業(yè)的服務(wù)類型豐富多樣。隨著現(xiàn)代人消費水平的不斷提高,人們對婚慶行業(yè)的要求也越來越高。為了給用戶提供稱心的服務(wù),婚慶行業(yè)的公司,不再被傳統(tǒng)婚慶服務(wù)所束縛,而是提供更加新穎、簡潔、豐富的服務(wù),提升用戶體驗?;閼c公司更加注重團隊合作和團隊精神。在婚慶行業(yè)工作,少不了各種類型的服務(wù)團隊之間的合作,例如影像團隊,化妝師團隊等等。通常情況下,一場婚禮的整體流程和具體細節(jié)由本場婚禮的策劃師負責制定,并統(tǒng)一安排人手。從事婚慶行業(yè)的人更加專業(yè)化。為了使口碑提升,形成品牌效應(yīng),從事婚慶行業(yè)的人自身專業(yè)性素質(zhì)不斷提升,服務(wù)的質(zhì)量也越來越高,這樣也使婚慶行業(yè)朝著專業(yè)化方向發(fā)展。與龐大的市場需求和樂觀的發(fā)展前景相比較,目前中國的婚慶行業(yè)還遠遠不能滿足消費者的需求。據(jù)調(diào)查顯示,中國人在新婚時對自己選擇的婚慶公司表示比較滿意的比率只有10%左右。目前婚慶行業(yè)在產(chǎn)業(yè)的規(guī)模大小和對用戶的服務(wù)水平上都有很長的路要走。本文所設(shè)計的婚慶平臺主要解決以下幾個痛點:傳統(tǒng)婚慶行業(yè)的發(fā)展比較落后。據(jù)調(diào)查顯示,中國目前承辦婚禮的機構(gòu)普遍是以實體店為主,發(fā)展相對較為落后,并且很少有網(wǎng)絡(luò)化的平臺。本文設(shè)計并實現(xiàn)一個網(wǎng)絡(luò)化的婚慶平臺,方便用戶定制屬于自己的婚禮,實現(xiàn)婚慶行業(yè)的信息化?,F(xiàn)代人婚慶方面的知識比較匱乏。即將結(jié)婚的人們一般都對自己的婚禮十分重視,但現(xiàn)代人普遍缺乏婚禮習(xí)俗,婚禮流程等知識。本平臺提供豐富的有關(guān)婚禮習(xí)俗,婚禮攻略方面的文章,方便用戶了解婚慶方面的知識。婚慶行業(yè)隱形消費較多。隱形消費出現(xiàn)的原因是傳統(tǒng)婚慶行業(yè)消費不透明,細則不明確等。本婚慶平臺提供公開,透明化的服務(wù),價格一目了然,絕無二次消費,用戶可放心使用。本文所設(shè)計的婚慶平臺旨在解決人們在結(jié)婚時遇到的問題,努力為人們提供最簡潔、最便利的婚慶服務(wù)以及有關(guān)婚禮習(xí)俗和婚禮攻略方面的知識,形成一個專業(yè)化的服務(wù)體系。通過本婚慶平臺,用戶可直接計算婚慶所需費用,提供了直觀的婚慶體驗,使婚慶流程電子化,現(xiàn)代化。這些對于提高婚慶服務(wù)的質(zhì)量和層次,滿足客戶的時尚化、個性化和多元化需求都有一定意義。本文主要從以下幾個方面進行闡述:(1)對本婚慶平臺使用的相關(guān)技術(shù)進行介紹。(2)對本婚慶平臺進行功能需求分析和非功能需求分析。(3)對本婚慶平臺進行系統(tǒng)設(shè)計,包括總體設(shè)計與詳細設(shè)計。(4)對本婚慶平臺進行實現(xiàn),主要包括數(shù)據(jù)庫實現(xiàn)和核心功能的實現(xiàn)。(5)對本婚慶平臺進行測試,主要包括功能測試和性能測試。1相關(guān)技術(shù)SSM框架簡介SSM框架,即Spring、SpringMVC和MyBatis3個開源框架組合而成。SSM框架通常作為web項目的框架使用。同時SSM框架也是目前主流的JavaEE企業(yè)級框架,適用于搭建各種大型的企業(yè)級應(yīng)用系統(tǒng)REF_Ref29349\w\h[2]。Sping框架是一個集眾多設(shè)計模式于一身的開源的,輕量級的項目管理框架,致力于JavaEE輕量級解決方案,其核心思想是IOC與AOP。IOC即控制反轉(zhuǎn)(InverseOfControl),將對象的創(chuàng)建由原來new的方式轉(zhuǎn)移到Spring配置文件中,由Spring工廠進行創(chuàng)建。AOP即面向切面編程(AspectOrientedProgramming),從切入點和通知類入手,使用動態(tài)代理給目標類增加額外功能REF_Ref20762\w\h[3]。SpringMVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在SpringWebFlow里面REF_Ref10177\w\h[4]。Spring框架提供了構(gòu)建Web應(yīng)用程序的全功能MVC模塊。SpringMVC是輕量級的典型MVC框架,在整個MVC架構(gòu)中充當控制器。在開發(fā)中,通常使用其注解式開發(fā),十分的高效與靈活。MyBatis框架是一個基于Java的持久層框架,主要用于對數(shù)據(jù)庫的增刪改查操作。MyBatis對現(xiàn)有的JDBC代碼進行合理封裝,可以自動完成對象關(guān)系映射。MyBatis的出現(xiàn)大大簡化了開發(fā)流程,提高了開發(fā)效率REF_Ref9224\w\h[5]。MySQL數(shù)據(jù)庫簡介在當今的互聯(lián)網(wǎng)中,最常見的數(shù)據(jù)庫模型主要有兩種,即關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫。關(guān)系型數(shù)據(jù)庫是創(chuàng)建在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫,利用集合代數(shù)等數(shù)學(xué)概念和方法來對數(shù)據(jù)庫中的數(shù)據(jù)進行處理REF_Ref10076\w\h[6]。MySQL是目前最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQLAB公司開發(fā),目前為Oracle公司所有。MySQL數(shù)據(jù)庫存儲速度很快,體積相對較小且具有跨平臺的特性,由于開放源碼,任何人都可以下載使用,所以很多網(wǎng)站的開發(fā)者在開發(fā)時一般都會選擇MySQL作為數(shù)據(jù)庫REF_Ref10021\w\h[7]。MVC設(shè)計模式簡介設(shè)計模式是一套成功的代碼設(shè)計總結(jié),并且這些代碼已被開發(fā)人員反復(fù)使用REF_Ref11232\w\h[8]。模式都是典型問題的解決方案,而不是某個單獨的問題。在程序設(shè)計中,把采用模型(Model)、視圖(View)、控制(Controller)的設(shè)計方式稱為MVC設(shè)計模式REF_Ref22112\w\h[9]。模型(Model)即處理業(yè)務(wù)邏輯,對應(yīng)組件是一個Java類。視圖層(View)即顯示查詢結(jié)果并收集用戶數(shù)據(jù),對應(yīng)組件是jsp或html??刂破鲗樱–ontroller)即接收View請求并將請求轉(zhuǎn)發(fā)給對應(yīng)的Model并響應(yīng)客戶端,對應(yīng)組件是Servlet。在開發(fā)時按照MVC設(shè)計模式進行開發(fā)有很多好處:(1)每層各自負責自己的任務(wù):在MVC設(shè)計模式中,3個層分工互不相同,若某層需求變化,只需修改自己層中的代碼,不影響另外2層REF_Ref12271\w\h[10]。(2)有利于人員分工:例如某企業(yè)在開發(fā)某項目時使用MVC設(shè)計模式,那么前端開發(fā)工程師可以開發(fā)JSP頁面,后端開發(fā)工程師可以開發(fā)控制器或處理業(yè)務(wù),兩者分工明確且可同時進行。(3)有利于組件復(fù)用:例如控制層可以是一個通用組件,視圖層也可以是一個通用界面。總結(jié)來說,MVC設(shè)計模式使界面和業(yè)務(wù)邏輯分離,使程序變得更加靈活。本章小結(jié)本章主要介紹了本婚慶平臺所使用的技術(shù):基于SSM框架技術(shù)進行搭建,MySQL數(shù)據(jù)庫用于數(shù)據(jù)存儲,使用MVC設(shè)計模式進行代碼的編寫,增強程序的可維護性和拓展性,降低耦合。

2系統(tǒng)分析2.1功能需求用戶功能主要包括:注冊,登錄,修改基本信息,修改密碼,查看預(yù)約信息,查看日志信息,反饋建議,查看婚慶資訊,查看分享愛情故事,查看可定制的婚慶服務(wù),定制婚禮和預(yù)約。如圖2.1所示:圖2.1婚慶平臺用戶用例圖注冊:用戶進入婚慶平臺用戶端,若處于非登錄狀態(tài),可選擇進行注冊,用戶進入注冊頁面,輸入相關(guān)基本信息可進行注冊,例如:性別、聯(lián)系方式、出生日期等,若用戶注冊成功,頁面跳轉(zhuǎn)至登錄頁面。登錄:用戶進入婚慶平臺用戶端,若處于非登錄狀態(tài),可選擇進行登錄,用戶進入登錄頁面,輸入正確的用戶名和密碼可進行登錄,若用戶登錄成功,即可跳轉(zhuǎn)至主頁面。修改基本信息:用戶進入婚慶平臺用戶端,登錄后,用戶可進入個人中心頁面,選擇“修改基本信息”,即可對注冊時填寫的基本信息進行修改,例如:性別、聯(lián)系方式、出生日期等。修改密碼:用戶進入婚慶平臺用戶端,登錄后,用戶可進入個人中心頁面,選擇“修改密碼”,然后輸入正確的原密碼和新設(shè)置的密碼,即可完成對密碼的修改操作。查看預(yù)約信息:用戶進入婚慶平臺用戶端,登錄后,用戶可進入個人中心頁面,選擇“我的預(yù)約”,即可查看自己已預(yù)約的婚慶服務(wù)信息,例如預(yù)約編號、預(yù)約時間、總額等。查看日志信息:用戶進入婚慶平臺用戶端,登錄后,用戶可進入個人中心頁面,選擇“登錄日志”或“密碼修改日志”,即可查看歷史登錄時間或歷史密碼修改時間。反饋建議:用戶進入婚慶平臺用戶端,登錄后,可進入反饋建議頁面,輸入對婚慶平臺的建議,提交后,管理員會看到用戶的反饋建議。查看婚慶資訊:用戶進入婚慶平臺用戶端,用戶可在首頁看到“婚禮攻略”“婚禮習(xí)俗”,“友情鏈接”3個欄目,點擊各自欄目下的鏈接,即可查看平臺提供的婚慶資訊信息。查看分享愛情故事:用戶進入婚慶平臺用戶端,可進入愛情故事頁面,用戶可查看其他用戶分享的愛情故事,也可分享自己的愛情故事,在愛情故事分享頁面,輸入故事標題和故事內(nèi)容,提交并被管理員審核通過后,分享的愛情故事方可顯示。查看可定制的服務(wù):用戶進入婚慶平臺用戶端,可在首頁看到“主題分類”,“主題推薦”,“司儀推薦”,“禮服推薦”,“婚車推薦”5個欄目,每個欄目下對應(yīng)著各自的婚慶服務(wù),用戶可選擇查看服務(wù)的詳情展示頁。11.定制婚禮:用戶進入婚慶平臺用戶端,可進入服務(wù)詳情展示頁,可把心儀的服務(wù)添加到定制列表,定制列表包含主題,司儀,禮服,婚車4種類型,每種類型最多只能定制1個。12.預(yù)約:用戶進入婚慶平臺用戶端,登錄后,可進入定制列表頁面,此頁面顯示主題、司儀、禮服、婚車4中類型的服務(wù)定制情況,在選擇服務(wù)定制之后輸入預(yù)約時間,可進行預(yù)約。管理員功能主要包括:登錄,處理預(yù)約信息,查看反饋建議,查看管理員登錄日志,查看數(shù)據(jù)統(tǒng)計,用戶相關(guān)管理,婚禮定制管理,主題相關(guān)管理和平臺資訊管理。如圖2.2所示:圖2.2婚慶平臺管理員用例圖登錄:管理員進入婚慶平臺管理員端的登錄頁,輸入管理員名稱和密碼,點擊登錄按鈕,若管理員名稱和密碼正確,即可登錄成功,之后頁面跳轉(zhuǎn)至婚慶平臺管理員端主頁面。處理預(yù)約信息:管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“處理預(yù)約信息”,可查看用戶的預(yù)約信息,并對待處理狀態(tài)的預(yù)約信息進行處理,可選擇“接受預(yù)約”或“拒絕預(yù)約”。3.查看反饋建議:管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“查看反饋建議”,可查看用戶的反饋建議信息,例如用戶名,反饋建議內(nèi)容和反饋建議時間等。4.查看管理員登錄日志:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“管理員登錄日志”,即可查看管理員的登錄日志信息,例如:管理員名稱和登錄時間等。5.查看數(shù)據(jù)統(tǒng)計:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“平臺數(shù)據(jù)統(tǒng)計”,可出現(xiàn)2個二級菜單,分別是用戶性別年齡統(tǒng)計和用戶預(yù)約消費統(tǒng)計。用戶性別年齡統(tǒng)計:管理員可查看用戶性別年齡柱狀圖,此柱狀圖顯示用戶在各個年齡段的男女分布人數(shù)。通過用戶性別年齡柱狀圖可以推測本婚慶平臺用戶的大致年齡范圍。用戶預(yù)約消費統(tǒng)計:管理員可查看用戶預(yù)約消費餅狀圖,此餅狀圖顯示用戶在各個消費區(qū)間的人數(shù)及所占百分比。通過用戶預(yù)約消費餅狀圖可以推測本婚慶平臺用戶的消費水平。6.用戶相關(guān)管理:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“用戶相關(guān)管理”,可出現(xiàn)2個二級菜單,分別是用戶信息管理和愛情故事管理。用戶信息管理:管理員可查看用戶信息,例如用戶名,手機號碼,性別,出生日期,年齡,注冊時間等。同時,管理員可更改用戶的狀態(tài)信息,凍結(jié)某個用戶,若某個用戶賬號被凍結(jié),則該用戶無法登錄婚慶平臺用戶端。愛情故事管理:管理員可查看用戶分享的愛情故事信息,例如標題,作者,分享時間和狀態(tài)信息等。管理員點擊查看詳情按鈕,可查看當前愛情故事的詳細內(nèi)容,并且管理員可更改愛情故事的狀態(tài)信息,使某個故事顯示或不顯示,若某個故事狀態(tài)是不顯示,則該故事不在婚慶平臺用戶端顯示,不可被其他用戶閱讀?;槎Y定制管理:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“婚禮定制管理”,可出現(xiàn)4個二級菜單,分別是主題定制管理、司儀定制管理、禮服定制管理和婚車定制管理。主題定制管理:管理員可查看主題信息,例如主題名稱,圖片展示,主題簡介,價格,熱度值,策劃師,所屬類別,所屬影像團隊,所屬化妝團隊和狀態(tài)信息。同時,管理員可添加,刪除,修改主題信息,若某個主題狀態(tài)是不可定制,則該主題不在婚慶平臺用戶端顯示,不可被用戶定制。司儀定制管理:管理員可查看司儀信息,例如司儀姓名,圖片展示,手機號碼,性別,出生日期,個人簡介,價格,熱度值和狀態(tài)信息。同時,管理員可添加,刪除,修改司儀信息,若某個司儀狀態(tài)是不可定制,則該司儀不在婚慶平臺用戶端顯示,不可被用戶定制。禮服定制管理:管理員可查看禮服信息,例如禮服名稱,圖片展示,禮服簡介,使用時間,價格,熱度值和狀態(tài)信息等。同時,管理員可添加,刪除,修改禮服信息,若某個禮服狀態(tài)是不可定制,則該禮服不在婚慶平臺用戶端顯示,不可被用戶定制?;檐嚩ㄖ乒芾恚汗芾韱T可查看婚車信息,例如婚車名稱,圖片展示,婚車簡介,使用時間,價格,熱度值和狀態(tài)信息等。同時,管理員可添加,刪除,修改婚車信息,若某個婚車狀態(tài)是不可定制,則該婚車不在婚慶平臺用戶端顯示,不可被用戶定制。主題相關(guān)管理:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“主題相關(guān)管理”,可出現(xiàn)4個二級菜單,分別是類別管理、策劃師管理、影像團隊管理和化妝團隊管理。類別管理:管理員可查看主題的類別信息,例如類別名稱等,本婚慶平臺的類別主要分為5種:復(fù)古婚禮、夢幻婚禮、唯美婚禮、西式婚禮和簡潔婚禮。同時,管理員可添加,刪除,修改類別信息。策劃師管理:管理員可查看主題的策劃師信息,例如策劃師姓名,圖片展示,手機號碼,性別,個人簡介,個人宣言,從業(yè)時間等。同時,管理員可添加,刪除,修改策劃師信息。影像團隊管理:管理員可查看主題的影像團隊信息,例如影像團隊名稱,圖片展示,手機號碼,團隊簡介,團隊宣言,團隊成立日期等。同時,管理員可添加,刪除,修改影像團隊信息?;瘖y團隊管理:管理員可查看主題的化妝團隊信息,例如化妝團隊名稱,圖片展示,手機號碼,團隊簡介,團隊宣言,團隊成立日期等。同時,管理員可添加,刪除,修改化妝團隊信息。9.平臺資訊管理:管理員登錄進入婚慶平臺管理員端后,在菜單欄選擇“平臺資訊管理”,可出現(xiàn)3個二級菜單,分別是婚禮攻略管理、婚禮習(xí)俗管理、和友情鏈接管理?;槎Y攻略管理:管理員可查看本婚慶平臺提供的婚禮攻略信息,例如文章標題,作者,發(fā)表時間,上次修改時間和操作等。同時,管理員可添加,刪除,修改婚禮攻略信息?;槎Y習(xí)俗管理:管理員可查看本婚慶平臺提供的婚禮習(xí)俗信息,例如文章標題,作者,發(fā)表時間,上次修改時間和操作等。同時,管理員可添加,刪除,修改婚禮習(xí)俗文章。友情鏈接管理:管理員可查看本婚慶平臺提供的友情鏈接信息,例如網(wǎng)站的名稱和網(wǎng)站的具體網(wǎng)址等。同時,管理員可添加,刪除,修改友情鏈接信息。2.2非功能需求在\t"/item/%E9%9D%9E%E5%8A%9F%E8%83%BD%E6%80%A7%E9%9C%80%E6%B1%82/_blank"需求分析時,開發(fā)人員相對來說更加關(guān)注功能需求,但非功能需求同樣重要,它影響了系統(tǒng)的架構(gòu)設(shè)計REF_Ref12382\w\h[11]。如果把非功能需求做好,可以使開發(fā)的產(chǎn)品生命周期更長,提高了產(chǎn)品的可靠性和可維護性。本婚慶平臺的非功能需求包括環(huán)境需求,界面需求,資源使用率,業(yè)務(wù)量和響應(yīng)時間。如表2.1所示:表2.1非功能需求詳情編號需求類別內(nèi)容1環(huán)境需求操作系統(tǒng):Windows7及以上;處理器:Corei5以上;內(nèi)存>=500MB;硬盤>=80G;數(shù)據(jù)庫:MySQL56;瀏覽器:InternetExplorer6.0及以上;開發(fā)工具:IntelliJIDEA;2界面需求使用Bootstrap模板進行開發(fā),使界面更加簡潔與美觀3資源使用率CPU占用率<=50%;內(nèi)存占用率<=50%;4業(yè)務(wù)量平均并發(fā)用戶數(shù)為20;最大并發(fā)用戶數(shù)為50;5響應(yīng)時間復(fù)雜功能響應(yīng)時間<=400ms;簡單功能響應(yīng)時間<=200ms;2.3本章小結(jié)本章以第一章介紹的相關(guān)技術(shù)為基礎(chǔ),對婚慶平臺進行系統(tǒng)分析,主要介紹功能需求和非功能需求2個方面,其中主要功能為:用戶可登錄婚慶平臺查看平臺提供的信息,定制婚禮并預(yù)約,管理員登錄婚慶管理平臺,可查看用戶的預(yù)約信息,對平臺上的信息進行管理。

3系統(tǒng)設(shè)計3.1總體設(shè)計3.1.1平臺設(shè)計原則應(yīng)對需求的變化是開發(fā)過程中的難點,通常來說,需求的變化是不可預(yù)料的,開發(fā)人員要為此做好準備。本婚慶平臺在設(shè)計時也考慮到了這一點,采用了開閉原則、單一職責原則和接口分離原則REF_Ref6130\w\h[12]。開閉原則:面向?qū)ο笤O(shè)計中最基本的設(shè)計原則,軟件實體(例如類、模塊或方法)應(yīng)該對擴展開放,對修改關(guān)閉。本婚慶平臺在設(shè)計時,采用此原則進行開發(fā),當需求變更,當需求發(fā)生變化時,通過擴展代碼的行為而不是修改現(xiàn)有的代碼來實現(xiàn)變化REF_Ref13818\w\h[13]。此原則的使用讓本婚慶平臺變得更加穩(wěn)定與靈活。單一職責原則:即一個類只負責一個職責。這個原則的使用讓類的職責變得更加單一。每個類只需要處理自己的部分,類的復(fù)雜性就會降低,代碼也變得更容易維護。本婚慶平臺在設(shè)計時不僅把這個原則作用于類上,還把此原則作用在了接口和方法上,即一個接口或方法,只負責一件事,這樣接口將更加簡單,方法中的代碼將更少、更容易閱讀和更容易維護REF_Ref22112\w\h[14]。(3)接口分離原則:即多個特定的客戶端接口比通用的通用接口要好。換句話說就是最好為每個類構(gòu)建各自的接口,而不是試圖為所有要調(diào)用的類構(gòu)建一個非常大的接口。本婚慶平臺在設(shè)計時采用此原則,沒有龐大的接口,每個接口都是小粒度的、有限的接口,即一個接口僅服務(wù)于一個業(yè)務(wù)邏輯。此原則的使用提高了本婚慶平臺的內(nèi)聚性,減少了外部交互,并降低了耦合度REF_Ref15219\w\h[15]。本婚慶平臺的功能結(jié)構(gòu)從角色來劃分可分為:用戶模塊和管理員模塊。用戶模塊的功能包括:用戶注冊,用戶登錄,修改基本信息,修改密碼,查看預(yù)約信息,查看日志信息,反饋建議,查看婚慶資訊,查看和分享愛情故事,查看可定制的婚慶服務(wù),自主定制服務(wù),預(yù)約。管理員模塊的功能包括:管理員登錄,處理預(yù)約信息,查看反饋建議,查看管理員登錄日志,查看數(shù)據(jù)統(tǒng)計,用戶相關(guān)管理,婚禮定制管理,主題相關(guān)管理,平臺資訊管理。用戶模塊的功能主要是查看平臺提供的內(nèi)容,提交信息。管理員模塊的功能主要是對平臺的內(nèi)容進行管理,查看用戶提交的信息。本婚慶平臺功能結(jié)構(gòu)如圖3.1所示:圖3.1婚慶平臺功能結(jié)構(gòu)圖本婚慶平臺采用B/S架構(gòu),即瀏覽器和服務(wù)器架構(gòu)模式,這種架構(gòu)有很多優(yōu)點,例如B/S架構(gòu)具備通用性,開發(fā)成本較低,當需要更新時,直接增加或修改后臺代碼即可完成更新,而C/S架構(gòu)則需要對客戶端進行升級REF_Ref14873\w\h[16]。本婚慶平臺的B/S架構(gòu)如圖3.2所示:圖3.2婚慶平臺B/S架構(gòu)圖本婚慶平臺基于SSM框架技術(shù)進行搭建,主要分為4層:dao層、service層、controller層和view層。通常來說,首先是view層發(fā)送請求至controller層,controller層控制業(yè)務(wù)的流程,然后controller層調(diào)用service層,service層處理具體的業(yè)務(wù),最后service層用dao層訪問數(shù)據(jù)庫信息REF_Ref15154\w\h[17]。如圖3.3所示:圖3.3婚慶平臺分層體系說明圖3.2詳細設(shè)計平臺詳細設(shè)計包括數(shù)據(jù)庫設(shè)計和核心功能設(shè)計2個方面。本婚慶平臺一共設(shè)計了20張表,用于滿足功能需求,核心功能設(shè)計主要包括用戶分享愛情故事、定制婚禮、預(yù)約和管理員處理預(yù)約信息、查看數(shù)據(jù)統(tǒng)計。根據(jù)之前章節(jié)的需求分析和平臺功能設(shè)計,形成了可以反應(yīng)本婚慶平臺的數(shù)據(jù)概念模型,矩形框表示每個實體,橢圓形框表示實體中的屬性,菱形表示實體之間的關(guān)系。如圖3.4所示:圖3.4婚慶平臺實體關(guān)系圖從婚慶平臺實體關(guān)系圖可以看出本婚慶平臺的實體數(shù)量以及實體之間的關(guān)系:共有20個實體,實體之間有10個一對多關(guān)系,1個一對一關(guān)系。由此可得本婚慶平臺的20張表,如表3.1所示:表3.1婚慶平臺數(shù)據(jù)庫表序號表名說明1user用戶表2userloginlog用戶登錄日志表3userpasswordlog用戶密碼修改日志表4admin管理員表5adminloginlog管理員登錄日志表6product主題表7presenter司儀表8clothes禮服表9car婚車表10category類別表11planner策劃師表12photographer影像團隊表13dresser化妝團隊表14order_wed預(yù)約信息表15detail預(yù)約詳情表16story愛情故事表17message反饋建議表18guide婚禮攻略表19custom婚禮習(xí)俗表20web友情鏈接表根據(jù)婚慶平臺實體關(guān)系圖可以進行數(shù)據(jù)庫表的設(shè)計,以用戶表和主題表為例,用戶表設(shè)計如下字段:用戶id、用戶名、密碼、聯(lián)系方式、性別、出生日期、注冊時間、狀態(tài)、年齡。詳情如表3.2所示:表3.2婚慶平臺用戶表詳情列名數(shù)據(jù)類型約束條件其它說明idVARCHAR(255)PRIMARYKEY用戶idusernameVARCHAR(255)NOTNULL用戶名passwordVARCHAR(255)NOTNULL密碼phoneVARCHAR(255)NOTNULL聯(lián)系方式sexVARCHAR(255)NOTNULL性別birthdayDATENOTNULL出生日期createtimeDATENOTNULL注冊時間statusVARCHAR(255)NOTNULL狀態(tài)ageINT(11)NOTNULL年齡主題表設(shè)計如下字段:主題id、主題名稱、價格、熱度值、圖片路徑、主題簡介、狀態(tài)、所屬類別id、所屬策劃師id、所屬影像團隊id、所屬化妝團隊id。詳情如表3.3所示:表3.3婚慶平臺主題表詳情列名數(shù)據(jù)類型約束條件其它說明idVARCHAR(255)PRIMARYKEY主題idnameVARCHAR(255)NOTNULL主題名稱priceVARCHAR(255)NOTNULL價格hcountINT(11)NOTNULL熱度值imgVARCHAR(255)NOTNULL圖片路徑profileVARCHAR(255)NOTNULL主題簡介statusVARCHAR(255)NOTNULL狀態(tài)cateidVARCHAR(255)NOTNULL所屬類別idplanneridVARCHAR(255)NOTNULL所屬策劃師idphotoidVARCHAR(255)NOTNULL所屬影像團隊iddresseridVARCHAR(255)NOTNULL所屬化妝團隊id本婚慶平臺功能完善且數(shù)量眾多,由于篇幅有限,在此只介紹本婚慶平臺的5個核心功能:用戶分享愛情故事,定制婚禮,預(yù)約和管理員處理預(yù)約信息,查看數(shù)據(jù)統(tǒng)計。用戶分享愛情故事:用戶進入婚慶平臺用戶端,登錄后,點擊“愛情故事”,進入愛情故事頁面,點擊“分享我的愛情故事”,進入story_add.jsp頁面,輸入故事標題和故事內(nèi)容,點擊提交按鈕,本頁面的信息首先傳遞到StoryController控制層,接著調(diào)用StoryService相關(guān)方法處理業(yè)務(wù),然后調(diào)用StoryDao中的insertStory方法操作數(shù)據(jù)庫,最后返回數(shù)據(jù)至story_add.jsp頁面。如表3.4、圖3.5所示:表3.4婚慶平臺用戶分享愛情故事功能描述表序號名稱功能描述1story_add.jsp分享愛情故事的頁面,負責把用戶輸入的故事標題和故事內(nèi)容提交給后臺。2StoryController獲取story_add.jsp提交的數(shù)據(jù),調(diào)用StoryService的相關(guān)方法。3StoryService對傳入的數(shù)據(jù)進行業(yè)務(wù)處理,調(diào)用StoryDao的相關(guān)方法4StoryDao負責數(shù)據(jù)庫的相關(guān)操作,完成愛情故事的分享功能,并返回信息。5story_add.jsp分享完成后,跳轉(zhuǎn)至愛情故事列表頁面。圖3.5婚慶平臺用戶分享愛情故事時序圖(2)用戶定制婚禮:用戶可定制主題,司儀,禮服,婚車4種類型的服務(wù)。此處以主題定制為例,用戶進入婚慶平臺用戶端,登錄后,點擊可定制的主題,進入product_made.jsp頁面,之后點擊“添加到我的定制”,此時MadeController接收到請求,接著調(diào)用MadeService相關(guān)方法處理業(yè)務(wù),此功能不涉及數(shù)據(jù)庫操作,因此不調(diào)用dao層方法,最后返回數(shù)據(jù)至product_made.jsp頁面。如表3.5、圖3.6所示:表3.5婚慶平臺用戶定制婚禮功能描述表序號名稱功能描述1product_made.jsp主題詳情展示的頁面,顯示主題的名稱、價格、熱度值、圖片展示、相關(guān)簡介和“添加到我的定制”按鈕。2MadeController獲取product_made.jsp傳遞的請求,調(diào)用MadeService的相關(guān)方法。3MadeService進行有關(guān)定制婚禮的業(yè)務(wù)處理,完成定制婚禮功能,并返回信息。4product_made.jsp定制完成后,跳轉(zhuǎn)至定制列表頁面。圖3.6婚慶平臺用戶定制婚禮時序圖用戶預(yù)約:用戶進入婚慶平臺用戶端,登錄后,點擊“我的定制”,進入made.jsp頁面,此頁面顯示主題、司儀、禮服、婚車4中類型的服務(wù)定制情況,點擊預(yù)約按鈕,本頁面的信息首先傳遞到OrderController控制層,接著調(diào)用OrderService相關(guān)方法處理業(yè)務(wù),然后調(diào)用OrderDao中的insert方法操作數(shù)據(jù)庫,最后返回數(shù)據(jù)至made.jsp頁面。如表3.6、圖3.7所示:表3.6婚慶平臺用戶預(yù)約功能描述表序號名稱功能描述1made.jsp定制列表的頁面,顯示用戶定制的情況。2OrderController獲取made.jsp提交的數(shù)據(jù),調(diào)用OrderService的相關(guān)方法。3OrderService對傳入的數(shù)據(jù)進行業(yè)務(wù)處理,調(diào)用OrderDao的相關(guān)方法4OrderDao負責數(shù)據(jù)庫的相關(guān)操作,完成預(yù)約功能,并返回信息。5made.jsp預(yù)約完成后,返回本頁面。圖3.7婚慶平臺用戶預(yù)約時序圖管理員處理預(yù)約信息:管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“處理預(yù)約信息”,進入order.jsp頁面,可查看用戶的預(yù)約信息,并對待處理狀態(tài)的預(yù)約信息進行處理,選定一個預(yù)約信息后,點擊“處理”,在彈出框中選擇接受預(yù)約或拒絕預(yù)約,之后點擊提交按鈕,則此信息首先傳遞到OrderController控制層,接著調(diào)用OrderService相關(guān)方法處理業(yè)務(wù),然后調(diào)用OrderDao中的update方法操作數(shù)據(jù)庫,最后返回數(shù)據(jù)至order.jsp頁面。如表3.7、圖3.8所示:表3.7婚慶平臺管理員處理預(yù)約信息功能描述表序號名稱功能描述1order.jsp處理預(yù)約信息的頁面,顯示用戶預(yù)約的情況。2OrderController獲取order.jsp提交的數(shù)據(jù),調(diào)用OrderService的相關(guān)方法。3OrderService對傳入的數(shù)據(jù)進行業(yè)務(wù)處理,調(diào)用OrderDao的相關(guān)方法4OrderDao負責數(shù)據(jù)庫的相關(guān)操作,完成處理功能,并返回信息。5order.jsp處理完成后,返回本頁面。圖3.8婚慶平臺管理員處理預(yù)約信息時序圖(5)管理員查看數(shù)據(jù)統(tǒng)計:管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“平臺數(shù)據(jù)統(tǒng)計”,出現(xiàn)2個二級菜單,分別是用戶性別年齡統(tǒng)計和用戶預(yù)約消費統(tǒng)計。點擊“用戶性別年齡統(tǒng)計”,進入userEcharts.jsp頁面,可查看用戶性別年齡柱狀圖:請求首先傳遞到UserController控制層,接著調(diào)用UserService相關(guān)方法處理業(yè)務(wù),然后調(diào)用UserDao中的queryUserByAgeAndSex方法操作數(shù)據(jù)庫,最后返回數(shù)據(jù)至userEcharts.jsp頁面。如表3.8、圖3.9所示:表3.8婚慶平臺用戶性別年齡統(tǒng)計功能描述表序號名稱功能描述1userEcharts.jsp處理預(yù)約信息的頁面,顯示用戶預(yù)約的情況。2UserController獲取userEcharts.jsp傳遞的請求,調(diào)用UserService的相關(guān)方法。3UserService對傳入的數(shù)據(jù)進行業(yè)務(wù)處理,調(diào)用UserDao的相關(guān)方法。4UserDao負責數(shù)據(jù)庫的相關(guān)操作,完成查詢功能,并返回信息。5userEcharts.jsp查詢成功后,返回本頁面。圖3.9婚慶平臺用戶性別年齡統(tǒng)計時序圖點擊“用戶預(yù)約消費統(tǒng)計”,進入orderEcharts.jsp頁面,可查看用戶預(yù)約消費餅狀圖,此功能執(zhí)行流程為:請求首先傳遞到OrderController控制層,接著調(diào)用OrderService相關(guān)方法處理業(yè)務(wù),然后調(diào)用OrderDao中的queryOrderEcharts方法操作數(shù)據(jù)庫,最后返回數(shù)據(jù)至orderEcharts.jsp頁面。如表3.9、圖3.10所示:表3.9婚慶平臺用戶預(yù)約消費統(tǒng)計功能描述表序號名稱功能描述1orderEcharts.jsp處理預(yù)約信息的頁面,顯示用戶預(yù)約的情況。2OrderController獲取orderEcharts.jsp傳遞的請求,調(diào)用OrderService的相關(guān)方法。3OrderService對傳入的數(shù)據(jù)進行業(yè)務(wù)處理,調(diào)用OrderDao的相關(guān)方法。4OrderDao負責數(shù)據(jù)庫的相關(guān)操作,完成查詢功能,并返回信息。5orderEcharts.jsp查詢成功后,返回本頁面。圖3.10婚慶平臺用戶預(yù)約消費統(tǒng)計時序圖3.5本章小結(jié)本章以之前章節(jié)的系統(tǒng)分析為基礎(chǔ),對本婚慶平臺進行系統(tǒng)設(shè)計。主要介紹總體設(shè)計和詳細設(shè)計2個方面。平臺總體設(shè)計包括平臺設(shè)計原則、平臺功能結(jié)構(gòu)和平臺體系結(jié)構(gòu)3個方面,平臺詳細設(shè)計包括數(shù)據(jù)庫設(shè)計和核心功能設(shè)計2個方面。4系統(tǒng)實現(xiàn)4.1開發(fā)環(huán)境本婚慶平臺在開發(fā)時的硬件環(huán)境是Windows10操作系統(tǒng),Intel(R)Core(TM)i5處理器,8G內(nèi)存,1T硬盤空間。使用IntelliJIDEA2019作為開發(fā)工具,MySQL5.7版本的數(shù)據(jù)庫對數(shù)據(jù)進行存儲,Tomcat8.0為服務(wù)器來進行開發(fā)。根據(jù)需求分析與實際開發(fā),這些硬件環(huán)境和軟件環(huán)境符合平臺的開發(fā)條件。4.2開發(fā)規(guī)范本婚慶平臺在開發(fā)時符合Java的命名規(guī)范,主要包括包名、類名、方法名、變量名、參數(shù)名等REF_Ref17162\w\h[18]。包名統(tǒng)一使用小寫,且具有實際意義,具有區(qū)分性。類名使用名詞,如果一個類名含有多個單詞,則所有單詞首字母大寫。方法名的首個單詞首字母小寫,后續(xù)單詞首字母大寫。變量名和參數(shù)名也是首個單詞首字母小寫,后續(xù)單詞首字母大寫。在開發(fā)時為了方便,本婚慶平臺變量名和參數(shù)名一般只使用一個單詞REF_Ref15482\w\h[19]。4.3數(shù)據(jù)庫實現(xiàn)根據(jù)之前章節(jié)的數(shù)據(jù)庫設(shè)計,得出本婚慶平臺的20張表,數(shù)據(jù)庫表使用MySQL的可視化工具Navicat創(chuàng)建,先創(chuàng)建名為wedding的數(shù)據(jù)庫,然后創(chuàng)建各表,最后創(chuàng)建各表字段,如圖4.1所示:圖4.1婚慶平臺數(shù)據(jù)庫表實現(xiàn)圖4.4核心功能實現(xiàn)4.4.1用戶分享愛情故事用戶進入婚慶平臺用戶端,點擊“愛情故事”,進入愛情故事列表頁,點擊“分享我的愛情故事”,進入愛情故事分享頁,輸入故事標題和故事內(nèi)容,故事內(nèi)容集成了富文本編輯器,用戶在輸入內(nèi)容時可以設(shè)置文字的樣式和內(nèi)容的段落等,之后點擊提交按鈕即可完成本功能,分享的愛情故事通過平臺審核后方可顯示。如圖4.2、圖4.3所示:圖4.2婚慶平臺分享愛情故事實現(xiàn)圖1圖4.3婚慶平臺分享愛情故事實現(xiàn)圖24.4.2用戶定制婚禮用戶進入婚慶平臺用戶端,點擊可定制的服務(wù)(主題、司儀、禮服、婚車),進入服務(wù)詳情展示頁,該頁面主要內(nèi)容是該服務(wù)的名稱、價格、熱度值、圖片展示與相關(guān)簡介,之后點擊“添加到我的定制”,即可把心儀的服務(wù)添加到定制列表,定制列表包含主題、司儀、禮服、婚車4種類型,每種類型最多只能定制1個,如果定制列表已有某種服務(wù)類型,添加同種類型的其他服務(wù),則會自動替換為新添加的服務(wù)。定制列表頁面顯示用戶定制的服務(wù)信息以及定制的總金額。如圖4.4、圖4.5所示:圖4.4婚慶平臺定制婚禮實現(xiàn)圖1圖4.5婚慶平臺定制婚禮實現(xiàn)圖2部分核心代碼展示如下:Productproduct=productDao.selectByPrimaryKey(id);

System.out.println("添加主題:"+product.getPname());

DoubleproductPrice=product.getPrice();

session.setAttribute("productPrice",productPrice);//存價格

HashMap<String,Product>productMap=null;

Objectobj=session.getAttribute("productMap");

if(obj!=null){//若product類型存在

productMap=(HashMap<String,Product>)obj;

productMap.put("1",product);

//計算總價

total(session);

}else{//若product類型不存在,則創(chuàng)建hashmap,并加入該主題

productMap=newHashMap<>();

productMap.put("1",product);

session.setAttribute("productMap",productMap);

//計算總價

total(session);

}4.4.3用戶預(yù)約用戶進入婚慶平臺用戶端,登錄后,點擊“我的定制”,進入定制列表頁面,此頁面顯示主題、司儀、禮服、婚車4種類型的服務(wù)定制信息以及定制的總金額,輸入預(yù)約時間,點擊預(yù)約按鈕,彈出確認預(yù)約框,點擊確定即可完成預(yù)約操作,之后用戶可在“個人中心-我的預(yù)約”中查看預(yù)約信息,管理員未處理的預(yù)約信息,狀態(tài)顯示為:待處理。如圖4.6、圖4.7、圖4.8所示:圖4.6婚慶平臺用戶預(yù)約實現(xiàn)圖1圖4.7婚慶平臺用戶預(yù)約實現(xiàn)圖2圖4.8婚慶平臺用戶預(yù)約實現(xiàn)圖3部分核心代碼展示如下:HashMap<String,Product>productMap=null;

ObjectobjproductMap=session.getAttribute("productMap");

if(objproductMap!=null){//若product類型存在,設(shè)置名稱,價格

productMap=(HashMap<String,Product>)objproductMap;

Productproduct=productMap.get("1");

//修改熱度值(每預(yù)約一次,熱度值加10)

productDao.updateHcount(product.getId(),product.getHcount()+10);

detail.setProductname(product.getPname());

detail.setProductprice(product.getPrice());

}else{//若product類型不存在,設(shè)置名稱為未定制,價格為0

detail.setProductname("未定制");

detail.setProductprice(0.0);

}Stringorderno=getOrderno(date);//通過工具類生成預(yù)約編號

Useruser=(User)session.getAttribute("myUser");

Orderorder=newOrder();

order.setId(UUID.randomUUID().toString());

order.setTotal(total);//總價

order.setOrderno(orderno);//訂單編號

order.setOrdertime(date);//下單時間

order.setDetailid(uid);//訂單詳情id

order.setUserid(user.getId());//用戶id

order.setStatus("0");//狀態(tài)

orderDao.insert(order);4.4.4管理員處理預(yù)約信息管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“處理預(yù)約信息”,可查看用戶的預(yù)約信息,對待處理狀態(tài)的預(yù)約信息進行處理,選定一個預(yù)約信息后,點擊“處理”,在彈出框中選擇接受預(yù)約或拒絕預(yù)約,則用戶在“個人中心-我的預(yù)約”中查看預(yù)約信息時,狀態(tài)顯示為:預(yù)約成功或預(yù)約失敗。如圖4.9、圖4.10、圖4.11所示:圖4.9婚慶平臺處理預(yù)約信息實現(xiàn)圖1圖4.10婚慶平臺處理預(yù)約信息實現(xiàn)圖2圖4.11婚慶平臺處理預(yù)約信息實現(xiàn)圖34.4.5管理員查看數(shù)據(jù)統(tǒng)計管理員登錄進入婚慶平臺管理員端后,在菜單欄點擊“平臺數(shù)據(jù)統(tǒng)計”,出現(xiàn)2個二級菜單,分別是用戶性別年齡統(tǒng)計和用戶預(yù)約消費統(tǒng)計,此功能結(jié)合ECharts技術(shù)實現(xiàn)。點擊“用戶性別年齡統(tǒng)計”,可查看用戶性別年齡柱狀圖,此柱狀圖顯示用戶在各個年齡段的男女分布情況,鼠標懸停在柱狀圖上方,可顯示該年齡區(qū)間的具體人數(shù)REF_Ref16733\w\h[20]。根據(jù)此柱狀圖,可以推測本婚慶平臺用戶的大致年齡范圍,如圖4.12所示:圖4.12婚慶平臺用戶性別年齡柱狀圖部分核心代碼展示如下://echarts:用戶性別年齡統(tǒng)計

publicMapqueryUserByAgeAndSex(){

Mapmap=newHashMap();

ArrayListmanList=newArrayList();

manList.add(userDao.queryUserByAgeAndSex("男",0,20));

manList.add(userDao.queryUserByAgeAndSex("男",20,30));

manList.add(userDao.queryUserByAgeAndSex("男",30,40));

manList.add(userDao.queryUserByAgeAndSex("男",40,120));

ArrayListwomenList=newArrayList();

womenList.add(userDao.queryUserByAgeAndSex("女",0,20));

womenList.add(userDao.queryUserByAgeAndSex("女",20,30));

womenList.add(userDao.queryUserByAgeAndSex("女",30,40));

womenList.add(userDao.queryUserByAgeAndSex("女",40,120));

map.put("man",manList);

map.put("women",womenList);

returnmap;

}點擊“用戶預(yù)約消費統(tǒng)計”,可查看用戶預(yù)約消費餅狀圖,此餅狀圖顯示用戶在各消費區(qū)間所占比例,鼠標懸停在餅狀圖上方,可顯示該消費區(qū)間的具體人數(shù)及所占百分比。根據(jù)此餅狀圖,可以推測本婚慶平臺用戶的消費水平,如圖4.13所示:圖4.13婚慶平臺用戶預(yù)約消費餅狀圖部分核心代碼展示如下://echarts:用戶訂單消費統(tǒng)計

publicMapqueryOrderEcharts(){

Mapmap=newHashMap();

ArrayListorderDtoList=newArrayList();

orderDtoList.add(newOrderDTO("5000元以下",orderDao.queryOrderEcharts(0,5000)));

orderDtoList.add(newOrderDTO("5000元至10000元",orderDao.queryOrderEcharts(5000,10000)));

orderDtoList.add(newOrderDTO("10000元至15000元",orderDao.queryOrderEcharts(10000,15000)));

orderDtoList.add(newOrderDTO("15000元至20000元",orderDao.queryOrderEcharts(15000,20000)));

orderDtoList.add(newOrderDTO("20000元以上",orderDao.queryOrderEcharts(20000,100000)));

map.put("orderDtoList",orderDtoList);

returnmap;

}4.5本章小結(jié)本章以之前章節(jié)的系統(tǒng)分析和系統(tǒng)設(shè)計為基礎(chǔ),開發(fā)實現(xiàn)婚慶平臺。主要介紹本婚慶平臺的開發(fā)環(huán)境、開發(fā)規(guī)范、數(shù)據(jù)庫實現(xiàn)和核心功能實現(xiàn)4個方面,其中核心功能實現(xiàn)介紹了用戶分享愛情故事,定制婚禮,預(yù)約和管理員處理預(yù)約信息,查看數(shù)據(jù)統(tǒng)計共計5個功能。

5系統(tǒng)測試5.1測試計劃本婚慶平臺功能眾多且較為復(fù)雜,雖然在開發(fā)前已進行較為完善的系統(tǒng)分析與系統(tǒng)設(shè)計,但是仍有可能存在疏漏。為了使系統(tǒng)測試更加科學(xué)與高效,需要制定合理的測試計劃:1.對本婚慶平臺的每個功能進行測試,確保功能都能實現(xiàn),平臺正常工作。2.對本婚慶平臺進行性能測試,找到平臺中存在的性能瓶頸。5.2功能測試功能測試就是對本婚慶平臺的基本業(yè)務(wù)功能進行測試,看看真實結(jié)果是否與期望結(jié)果相同REF_Ref17242\w\h[21]。本文對用戶分享愛情故事,定制婚禮,預(yù)約3個功能進行測試,并撰寫測試用例。用戶分享愛情故事:用戶進入婚慶平臺用戶端,點擊“愛情故事”,進入愛情故事列表頁,點擊“分享我的愛情故事”,進入愛情故事分享頁,輸入故事標題和故事內(nèi)容,點擊提交按鈕即可完成本功能。測試用例如表5.1所示:表5.1用戶分享愛情故事測試用例編號測試方法期望結(jié)果真實結(jié)果1輸入故事標題和故事內(nèi)容,點擊提交按鈕。發(fā)布成功,跳轉(zhuǎn)至愛情故事列表頁。與期望結(jié)果相同2未輸入故事標題,點擊提交按鈕。提示故事標題不能為空。與期望結(jié)果相同3未輸入故事內(nèi)容,點擊提交按鈕。提示故事內(nèi)容不能為空。與期望結(jié)果相同用戶定制婚禮:用戶進入婚慶平臺用戶端,點擊可定制的服務(wù)(主題、司儀、禮服、婚車),進入服務(wù)詳情展示頁,之后點擊“添加到我的定制”,即可把心儀的服務(wù)添加到定制列表,定制列表包含主題、司儀、禮服、婚車4種類型,每種類型最多只能定制1個,如果定制列表已有某種服務(wù)類型,添加同種類型的其他服務(wù),則會自動替換為新添加的服務(wù)。測試用例如表5.2所示:表5.2用戶定制婚禮測試用例編號測試方法期望結(jié)果真實結(jié)果1用戶未登錄,在定制列表頁面點擊“添加到我的定制”。頁面跳轉(zhuǎn)至登錄頁面。與期望結(jié)果相同2用戶已登錄,定制列表某類型未添加服務(wù)時,選擇該類型服務(wù)點擊“添加到我的定制”。把該服務(wù)添加至定制列表,并計算價格。與期望結(jié)果相同3若用戶已登錄,定制列表某類型已添加服務(wù)時,選擇該類型服務(wù)點擊“添加到我的定制”。自動替換為新添加的服務(wù),并重新計算價格。與期望結(jié)果相同用戶預(yù)約:用戶進入婚慶平臺用戶端,點擊“我的定制”,進入定制列表頁面,此頁面顯示主題、司儀、禮服、婚車4種類型的服務(wù)定制信息以及定制的總金額,輸入預(yù)約時間,點擊預(yù)約按鈕,彈出確認預(yù)約框,點擊確定即可完成本功能。測試用例如表5.3所示:表5.3用戶預(yù)約測試用例編號測試方法期望結(jié)果真實結(jié)果1未選擇心儀服務(wù)定制,進入定制列表頁面。頁面提示定制列表為空。與期望結(jié)果相同2已選擇心儀服務(wù)定制,進入定制列表頁面,在各類型服務(wù)中點擊“移除”??砂岩堰x擇的該類型服務(wù)移除。與期望結(jié)果相同3已選擇心儀服務(wù)定制,進入定制列表頁面,點擊“移除所有”。可把已選擇的全部類型服務(wù)都移除。與期望結(jié)果相同4已選擇心儀服務(wù)定制,輸入合適的預(yù)約時間,點擊“預(yù)約”。預(yù)約成功,定制列表清空,且用戶可在“個人中心-我的預(yù)約”查看預(yù)約信息。與期望結(jié)果相同5已選擇心儀服務(wù)定制,未輸入預(yù)約時間,點擊“預(yù)約”。提示預(yù)約時間不可為空。與期望結(jié)果相同6已選擇心儀服務(wù)定制,輸入的預(yù)約時間小于等于當前時間,點擊“預(yù)約”。提示預(yù)約時間應(yīng)大于當前時間。與期望結(jié)果相同5.3性能測試性能測試即借助自動化測試工具模擬各種正常、峰值和異常負載條件來測試系統(tǒng)的性能REF_Ref15126\w\h[22]。本婚慶平臺使用Jmeter軟件軟件進行性能測試,流程如下:(1)打開Jmeter軟件:找到Jmeter的安裝路徑,進入bin目錄下,雙擊打開jmeter.bat。如圖5.1所示:圖5.1婚慶平臺性能測試圖-打開Jmeter軟件(2)添加線程組:在“TestPlan”上點擊鼠標右鍵,依次選擇“添加-線程(用戶)-線程組”。之后設(shè)置線程屬性,包括線程數(shù),啟動線程所需時間和循環(huán)次數(shù)REF_Ref18612\w\h[23]。如圖5.2所示:圖5.2婚慶平臺性能測試圖-添加線程組(3)添加HTTP請求:在“線程組”上點擊鼠標右鍵,依次選擇“添加-取樣器-HTTP請求”。如圖5.3所示:圖5.3婚慶平臺性能測試圖-添加HTTP請求(4)設(shè)置HTTP請求:填入使用的Web服務(wù)器信息和要發(fā)送的HTTP請求信息。本婚慶平臺所使用的協(xié)議設(shè)置為“http”,服務(wù)器名稱或IP設(shè)置為“l(fā)ocalhost”,端口號設(shè)置為“8080”,HTTP請求方法可設(shè)置為GET或POST,最后在路徑處填入要發(fā)送的請求,如果請求有參數(shù)信息,可在“參數(shù)”欄添加參數(shù)信息REF_Ref18671\w\h[24]。如圖5.4所示:圖5.4婚慶平臺性能測試圖-設(shè)置HTTP請求(5)添加監(jiān)聽器:在“線程組”上點擊鼠標右鍵,依次選擇“添加-監(jiān)聽器”,然后選擇添加聚合報告和圖形結(jié)果。如圖5.5所示:圖5.5婚慶平臺性能測試圖-添加監(jiān)視器(6)啟動并查看結(jié)果:點擊“啟動”按鈕,Jmeter軟件開始運行,稍后即可查看測試結(jié)果。點擊“聚合報告”可看到,本次測試的樣本數(shù)目是2000,平均響應(yīng)時間是202毫秒,響應(yīng)時間的中位數(shù)是175毫秒,即50%用戶請求的響應(yīng)時間在175毫秒之下,90%用戶請求的響應(yīng)時間在361毫秒之下,最小響應(yīng)時間是3毫秒,最大響應(yīng)時間是1541毫秒,沒有發(fā)生錯誤,異常率是0%,吞吐量是68.3/sec,即每秒處理完成的請求數(shù)是68.3,每秒接收的數(shù)據(jù)量是3861.6KB,每秒發(fā)送的數(shù)據(jù)量是9.54KBREF_Ref15254\w\h[25]。如圖5.6所示:圖5.6婚慶平臺性能測試圖-聚合報告點擊“圖形結(jié)果”可看到,本次測試的樣本數(shù)目是2000,最新樣本是28,即最后一次請求的響應(yīng)時間是28毫秒,平均響應(yīng)時間是202毫秒,響應(yīng)時間的中位數(shù)是175毫秒,即50%用戶請求的響應(yīng)時間在175毫秒之下,偏離數(shù)是166,吞吐量是4100.742/分鐘,即每分鐘處理完成的請求數(shù)是4100.742。如圖5.7所示:圖5.7婚慶平臺性能測試圖-圖形結(jié)果5.4本章小結(jié)本章對婚慶平臺進行系統(tǒng)測試,主要介紹測試計劃,功能測試和性能測試3個方面。系統(tǒng)測試的目的是為了使婚慶平臺能夠盡早的發(fā)現(xiàn)BUG并解決,使其穩(wěn)定運行,提升用戶體驗。

結(jié)論婚慶活動是人們在結(jié)婚時的重要組成部分,簡潔、便利的婚慶服務(wù)對于人們選擇婚慶平臺有重要的意義。為此,本文針對目前人們對婚慶平臺的期望,設(shè)計并實現(xiàn)了本婚慶平臺。本文首先對婚慶行業(yè)的前景和現(xiàn)狀進行闡述,然后介紹了本婚慶平臺所使用的技術(shù),接著對本婚慶平臺的設(shè)計和實現(xiàn)進行了說明與探討,最后對本婚慶平臺進行功能測試和性能測試。本文所開發(fā)的婚慶平臺已經(jīng)具備豐富的功能,可以較好的滿足人們對于婚慶平臺的業(yè)務(wù)需求。本婚慶平臺在設(shè)計與實現(xiàn)的過程中充分考慮了可擴展性、可維護性以及未來的需求變更等要求,具有代碼重用性強,系統(tǒng)可伸縮性好,安全性高等特點,所采用的SSM框架技術(shù)保證了平臺具有高內(nèi)聚、低耦合的特點。系統(tǒng)測試的結(jié)果說明了本婚慶平臺設(shè)計的合理性與有效性。本婚慶平臺的設(shè)計與實現(xiàn)有效的解決了人們在結(jié)婚時遇到的問題,具有便利性、實用性,對于其他的婚慶平臺具有廣泛的借鑒意義和參考價值。由于項目緊,自己本身技術(shù)水平有限,本婚慶平臺還存在一定的不足。比如管理員在處理預(yù)約信息時,步驟還不夠簡便,這是將來需要進一步完善的工作。致謝在此首先要感謝我的指導(dǎo)老師即李佳佳老師和倪春雨老師對我的指導(dǎo),我的畢業(yè)論文在老師耐心的指導(dǎo)下修改了很多次,最終得到了完善。其次要感謝我的班主任陳思老師對我的諄諄教誨,我跟隨陳思老師不僅學(xué)會了課堂上的知識,還學(xué)會了如何做人。大三下半學(xué)期,陳思老師曾悉心回答了我對未來工作的疑問,讓我對未來不再迷茫。然后要感謝在大學(xué)期間所有教授過我知識的老師,感謝你們可以讓我能夠等系統(tǒng)、全面的學(xué)習(xí)計算機相關(guān)知識,你們在工作中勤勤懇懇、兢兢業(yè)業(yè)的態(tài)度值得我去學(xué)習(xí)。最后要感謝大學(xué)期間的所有同學(xué)們,感謝你們陪我度過美好的大學(xué)生活,同窗之誼,我永遠銘記在心。

參考文獻盧益清,李忱.O2O商業(yè)模式及發(fā)展前景研究[J].企業(yè)經(jīng)濟,2013(11):98-101張曉軍.MVC架構(gòu)模式在Java開發(fā)中的應(yīng)用[J].黑龍江科技信息,2016(29):177-178聶英豪.基于JavaEE平臺的企業(yè)級自動化辦公系統(tǒng)研究[D].電子科技大學(xué),2019張自輝.基于springMVC框架下的精品課程管理平臺設(shè)計與實現(xiàn)[D].湖南師范大學(xué),2017李文杰.基于SSM框架開發(fā)平臺的教學(xué)案例式實踐[J].四川水泥,2019(09):268劉曉光.基于MySQL的分布式SQL數(shù)據(jù)庫的設(shè)計與實現(xiàn)[D].中國科學(xué)院大學(xué)(工程管理與信息技術(shù)學(xué)院),2016王磊.對Mysql數(shù)據(jù)庫的訪問方法的研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2014(04):138-139鄭苗.基于Java的設(shè)計模式理解與實現(xiàn)[J].電腦知識與技術(shù),2017,13(32):115-116+125BondarenkoVitaliyIvanovich,BilousovVyacheslavVladimirovich,NedopekinFedorVictorovich,BodriahaViktorViktorovich,AntropovaLarisaVitalievna.UsingMVCpatterninthesoftwaredevelopmenttosimulateproductionofhighcylindricalsteelingots[J].JournalofCrystalGrowth,2019,526:20常偉.基于MVC的銀監(jiān)會高管人員信息系統(tǒng)的分析與設(shè)計[D].南京航空航天大學(xué),2006李玥瑢,周煒,歐紅梅,鄧瑤,鄭安文,曹雙雙.基于SSM框架的高校服務(wù)平臺的設(shè)計[J].信息系統(tǒng)工程,2019(10):52-53張利琴,朱鵬飛,李偉,于華章.基于開閉原則的網(wǎng)上銀行身份認證服務(wù)方案[J].網(wǎng)絡(luò)空間安全,2018,9(09):39-46.Dd鄭朝霞.論開閉原則在JAVA程序設(shè)計中的應(yīng)用[J].電腦知識與技術(shù),2016,12(30):262-264高廣鵬.淺談軟件設(shè)計模式中的設(shè)計原則[J].電腦迷,2017(05):14曹森,蘇貴斌.軟件開發(fā)中的設(shè)計原則[J].軟件導(dǎo)刊,2012,11(01):74-75.XJiaqiHuo,TianyuZhang,JiahaoWang.ResearchonEndowmentInsuranceManagementSystemBasedonBSArchitecture[J].InternationalJournalofComputationalandEngineering,2019,4(2):130-131ZhenHaiMu.AnalysisandDesignofMVC-BasedWorkFlow[J].AppliedMechanicsandMaterials,2014,3468:10-11姜星.計算機軟件開發(fā)技術(shù)的應(yīng)用研究與趨勢[J].信息通信,2018(10):123-124張龍翔,王海峰.Java課程的工程化教學(xué)設(shè)計[J].教育現(xiàn)代化,2019,6(33):206-207+210王菲露,李軍,宋楊,胡勇,陳玉峰.基于Ajax技術(shù)的ECharts實時圖形報表實現(xiàn)[J].黑龍江工業(yè)學(xué)院學(xué)報(綜合版),2019,19(12):79-83FadelToure,MouradBadri,LucLamontagne.AmetricssuiteforJUnittestcode:amultiplecasestudyonopensourcesoftware[J].SpringerBerlinHeidelberg,2014,2(1):20-21林培杰,朱安南,程樹英.Android數(shù)據(jù)庫SQLite性能優(yōu)化[J].計算機系統(tǒng)應(yīng)用,2014,23(04):193-196DanRahmel.TestingaSitewithApacheBench,JMeter,andSelenium[M].Apress:2013-06-15:120-121紀力煒.基于JMeter工具的性能自動化測試系統(tǒng)設(shè)計與實現(xiàn)[D].南京郵電大學(xué),2016賴歆.淺談信息化系統(tǒng)中的性能測試[J].信息通信,2018(08):145-147

怎樣提高電腦系統(tǒng)運行速度WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設(shè)置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務(wù);對磁盤及CPU等硬件進行優(yōu)化設(shè)置;修改默認設(shè)置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。1.加快系統(tǒng)啟動速度WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設(shè)置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務(wù);對磁盤及CPU等硬件進行優(yōu)化設(shè)置;修改默認設(shè)置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。(1)MsconfigWindowsXP的啟動速度在系統(tǒng)安裝初期還比較快,但隨著安裝的軟件不斷增多,系統(tǒng)的啟動速度會越來越慢,這是由于許多軟件把自己加在了啟動程序中,這樣開機即需運行,大大降低了啟動速度,而且也占用了大量的系統(tǒng)資源。對于這樣一些程序,我們可以通過系統(tǒng)配置實用程序Msconfig將它們從啟動組中排除出去。選擇“開始”菜單中的“運行”命令,在“運行”對話框中鍵入“Msconfig”,回車后會彈出“系統(tǒng)配置實用程序”對話框,選擇其中的“啟動”選項卡(如圖1),該選項卡中列出了系統(tǒng)啟動時加載的項目及來源,仔細查看每個項目是否需要自動加載,否則清除項目前的復(fù)選框,加載的項目越少,啟動的速度就越快。設(shè)置完成后需要重新啟動方能生效。(2)BootvisBootvis是微軟提供的一個啟動優(yōu)化工具,可提高WindowsXP的啟動速度。用BootVis提升WindowsXP的啟動速度必須按照正確的順序進行操作,否則將不會起到提速的效果。其正確的操作方法如下:啟動Bootvis,從其主窗口(如圖2)中選擇“工具”菜單下的“選項”命令,在“符號路徑”處鍵入Bootvis的安裝路徑,如“C:\ProgramFiles\Bootvis”,單擊“保存”退出。從“跟蹤”菜單中選擇“下次引導(dǎo)”命令,會彈出“重復(fù)跟蹤”對話框,單擊“確定”按鈕,BootVis將引導(dǎo)WindowsXP重新啟動,默認的重新啟動時間是10秒。系統(tǒng)重新啟動后,BootVis自動開始運行并記錄啟動進程,生成啟動進程的相關(guān)BIN文件,并把這個記錄文件自動命名為TRACE_BOOT_1_1。程序記錄完啟動進程文件后,會重新啟動B

溫馨提示

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

評論

0/150

提交評論