




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
-第1章項(xiàng)目概述1.1問題描述隨著電商的普及和發(fā)展,人們?cè)絹碓较矚g網(wǎng)上購(gòu)物,不論吃的穿的。人們喜歡網(wǎng)購(gòu)有很多原因:網(wǎng)購(gòu)物品比實(shí)體便宜,款式顏色多樣,方便快捷等。開發(fā)一個(gè)基于SpringBoot的購(gòu)物商鋪,可以滿足人們對(duì)于便捷、快速、個(gè)性化購(gòu)物的需求。同時(shí),結(jié)合協(xié)同過濾算法實(shí)現(xiàn)個(gè)性化商品推薦,可以提高用戶體驗(yàn),增加用戶粘性.因?yàn)榛ヂ?lián)網(wǎng)發(fā)展迅速,電商普及,購(gòu)物平臺(tái)也越來越多,例如京東淘寶等。這些平臺(tái)能接受的客戶容量大,能輕松應(yīng)對(duì)大型節(jié)日的購(gòu)物浪潮。本系統(tǒng)存在接受用戶量小,功能相對(duì)不完整。但花費(fèi)成本低。1.2項(xiàng)目目標(biāo)隨著電商發(fā)展,人們消費(fèi)水平的提升,網(wǎng)上購(gòu)物的便宜快捷,越來越多的人喜歡網(wǎng)絡(luò)購(gòu)物。購(gòu)物平臺(tái)或多或少都存在一定問題。購(gòu)物商鋪系統(tǒng)的開發(fā)目標(biāo)是實(shí)現(xiàn)購(gòu)物的基本功能。為用戶提供購(gòu)物便宜,質(zhì)量有保證的,清潔舒適的購(gòu)物平臺(tái),讓人們得到良好的購(gòu)物體驗(yàn),買到喜歡的商品。本系統(tǒng)主要針對(duì)有的購(gòu)物平臺(tái)高價(jià),質(zhì)量差,商家評(píng)論不真實(shí)等問題,完善系統(tǒng)基本功能,營(yíng)造清潔舒適的購(gòu)物環(huán)境。1.3項(xiàng)目適用范圍本系統(tǒng)主要針對(duì)年輕人,年輕人大多數(shù)喜歡性價(jià)比高的商品,該系統(tǒng)的便宜,清潔舒適的特點(diǎn),很適合年輕人。用便宜,真實(shí)來獲取用戶信任,提升平臺(tái)使用度。1.4涉眾面向喜歡網(wǎng)購(gòu)并喜歡相對(duì)便宜,清潔真實(shí)購(gòu)物期望的用戶群體。
第2章需求分析2.1業(yè)務(wù)需求2.1.2業(yè)務(wù)流程購(gòu)物商鋪的總體業(yè)務(wù)流程如圖2.1所示。圖2.1總體業(yè)務(wù)流程圖2.1.3業(yè)務(wù)對(duì)象用戶可以瀏覽商品,收藏加入購(gòu)物車。用戶可以瀏覽多個(gè)商品,用戶可以收藏多個(gè)商品,用戶還選擇多個(gè)商品加入購(gòu)車,用戶選擇多個(gè)商下單購(gòu)買,用戶可以有多個(gè)訂單。領(lǐng)域模型如圖2.2所示。圖2.2領(lǐng)域模型2.2功能性需求2.2.1用例概述在下圖2.3層用例圖中購(gòu)物商鋪系統(tǒng)的基本用例。這些用例分別為瀏覽商品,登錄注冊(cè),加入購(gòu)物車,收藏下單,添加地址,管理訂單,管理發(fā)布商品,管理信息等,完成購(gòu)物商鋪系統(tǒng)的正常運(yùn)作。圖2.3高層用例圖用例摘要描述如表2.1所示。表2.1用例摘要描述用例標(biāo)識(shí)(UC)用例名稱摘要描述1注冊(cè)用戶名加密碼進(jìn)行注冊(cè)。2登錄注冊(cè)成功的用戶,使用用戶名加密碼進(jìn)行登錄。3修改個(gè)人資料用戶可以隨時(shí)更改頭像,昵稱,電話,郵箱和密碼。4瀏覽商品用戶可點(diǎn)擊不同分類,查看對(duì)應(yīng)商品。5加入購(gòu)物車用戶在查看商品圖片后,可以將該商品加入購(gòu)物車。6管理地址用戶可以添加收貨地址,編輯刪除地址信息。7收藏商品用戶可以添加移除收藏的商品。8查看訂單用戶可以查看發(fā)貨狀態(tài)和刪除訂單。9管理訂單商家可以對(duì)訂單進(jìn)行發(fā)貨和刪除。10管理評(píng)論商家可以刪除商品評(píng)論11管理發(fā)布商品商家可以上傳和刪除商品12管理公告管理員可以發(fā)布公告13管理信息管理員可以修改和刪除用戶和商家信息。2.2.2用例描述(1)用戶注冊(cè)賬號(hào)用例用戶填寫用戶名和密碼注冊(cè)賬號(hào)。用戶注冊(cè)賬號(hào)用例描述如表2.2所示。表2.2用戶注冊(cè)賬號(hào)用例圖用例標(biāo)識(shí)1.1用例名稱用戶注冊(cè)賬號(hào)參與者用戶前置條件用戶訪問登錄頁面。后置條件用戶注冊(cè)成功并登錄。用例概述用戶注冊(cè)賬號(hào),以便使用系統(tǒng)功能?;臼录?.用戶打開登錄頁面。2.點(diǎn)擊注冊(cè)字樣,填寫用戶名和密碼等信息和選擇角色。3.系統(tǒng)顯示注冊(cè)成功字樣,用戶注冊(cè)成功。備選事件流2a.用戶兩次密碼不一致,系統(tǒng)提示密碼不一致。備注用戶注冊(cè)成功后需要點(diǎn)擊登錄,跳轉(zhuǎn)登錄頁面。用戶登錄用例用戶使用用戶名加密碼登錄。用戶登錄用例描述如表2.3所示。表2.3用戶登錄用例用例標(biāo)識(shí)1.2用例名稱用戶登錄參與者用戶前置條件用戶已注冊(cè)賬號(hào)。后置條件用戶成功登錄系統(tǒng)并訪問系統(tǒng)功能。用例概述用戶注冊(cè)賬號(hào),以便使用系統(tǒng)功能。基本事件流用戶打開登錄頁面。用戶填寫已存在的的用戶名和密碼。用戶點(diǎn)擊登錄。進(jìn)入首頁頁面。備選事件流2.a用戶輸入密碼不正確,可聯(lián)系管理員,進(jìn)行查找修改。3a.用戶輸入的用戶名或密碼不正確:系統(tǒng)顯示賬戶不存在或密碼錯(cuò)誤備注登錄成功后,用戶可以訪問系統(tǒng)的各項(xiàng)功能。修改個(gè)人資料用例用戶修改個(gè)人資料用例描述如表2.4所示。用戶修改個(gè)人資料用例描述如表2.4所示。表2.4用戶修改個(gè)人資料用例用例標(biāo)識(shí)1.3用例名稱修改個(gè)人資料參與者用戶前置條件登錄成功并進(jìn)入首頁。后置條件用戶編輯保存?zhèn)€人信息。用例概述用戶可以修改跟人信息及密碼基本事件流用戶進(jìn)入系統(tǒng)首頁,點(diǎn)擊頭像。系統(tǒng)進(jìn)入用戶信息修改頁面。用戶更改個(gè)人信息以及密碼.用戶點(diǎn)擊保存。系統(tǒng)顯示保存成功,用戶密碼修改成功。備選事件流4a.系統(tǒng)自動(dòng)跳轉(zhuǎn)登錄頁面。備注用戶可以隨時(shí)更改個(gè)人信息和密碼。用戶瀏覽商品用例 用戶可以點(diǎn)擊查看瀏覽不同分類的商品。用戶瀏覽商品用例描述如表2.5所示。表2.5用戶瀏覽商品用例用例標(biāo)識(shí)1.4用例名稱用戶瀏覽商品參與者用戶前置條件用戶成功登錄進(jìn)入首頁。后置條件用戶瀏覽不同分類的商品。用例概述用戶可以點(diǎn)擊瀏覽不同分類下的對(duì)應(yīng)商品和熱銷商品和可能喜歡的商品?;臼录饔脩暨M(jìn)入系統(tǒng)首頁。用戶可以瀏覽對(duì)應(yīng)分類下的商品,也可以點(diǎn)擊查看熱銷和喜歡的視頻。用戶點(diǎn)擊對(duì)應(yīng)商品,能看到對(duì)應(yīng)商品的詳情和評(píng)價(jià)備選事件流2a.用戶也可以點(diǎn)擊搜索對(duì)應(yīng)商品名稱快速查找。4a.用戶搜索不存在的商品,系統(tǒng)也會(huì)推薦可能喜歡的商品。備注用戶登錄后可以隨時(shí)瀏覽商品。加入購(gòu)物車用例用戶瀏覽商品后,可以把喜歡的商品加入購(gòu)物車。加入購(gòu)物車用例描述如表2.6所示。表2.6用戶加入購(gòu)物車用例用例標(biāo)識(shí)1.5用例名稱加入購(gòu)物車參與者用戶前置條件用戶已成功登錄系統(tǒng)。后置條件用戶成功將喜歡的商品加入自己的購(gòu)物車。用例概述用戶可以選擇喜歡的商品,將其加入購(gòu)物車列表?;臼录饔脩暨M(jìn)入系統(tǒng)頁面。用戶查看商品后,可以選擇將商品加入購(gòu)物車。系統(tǒng)顯示操作成功字樣,商品成功加入購(gòu)物。備選事件流2a.點(diǎn)擊我的購(gòu)物車用戶可查看已加入的商品信息。4a.用戶可將購(gòu)物車中的商品移除。備注加入成功后,用戶可以在我的購(gòu)物車中查看已加入的商品。管理地址用例用戶可以添加多個(gè)收獲地址,并修改刪除已添加的地址。表2.7用戶用例管理地址用例用例標(biāo)識(shí)1.6用例名稱管理地址參與者用戶前置條件用戶已成功登錄系統(tǒng)。后置條件用戶成功添加收貨地址。用例概述用戶可以添加多個(gè)收貨地址,并修改刪除已添加的地址?;臼录饔脩暨M(jìn)入系統(tǒng)首頁。點(diǎn)擊我的地址,系統(tǒng)進(jìn)入我的地址頁面。添加收貨地址,填寫地址信息。用戶點(diǎn)擊保存。系統(tǒng)顯示保存成功,用戶收貨地址添加成功。備選事件流2a.用戶更換新住址,可以添加新的收貨地址。4a.用戶更換手機(jī)號(hào)碼后,可以更改就收貨地址中的舊號(hào)碼。備注添加成功后,用戶可以在我的地址中查看到所有收貨地址。收藏商品用例用戶可以將喜歡的商品加入收藏。收藏商品用例描述如表2.8所示。表2.8收藏商品用例用例標(biāo)識(shí)1.7用例名稱收藏商品參與者用戶前置條件點(diǎn)擊瀏覽某個(gè)商品。后置條件用戶成功收藏一個(gè)商品。用例概述用戶可以收藏商品,也可以移除收藏的商品?;臼录?.用戶點(diǎn)擊瀏覽某個(gè)商品。2.用戶選擇喜歡的商品進(jìn)行收藏操作。3.系統(tǒng)顯示收藏成功。4.用戶查看我的收藏。5.系統(tǒng)進(jìn)入我的收藏頁面。6.用戶能移除收藏的商品。7.用戶選擇要移除的商品,點(diǎn)擊移除。8.系統(tǒng)顯示移除成功字樣。備選事件流7a用戶點(diǎn)擊移除收藏,用例結(jié)束。備注(8)查看訂單用例用戶能查看自己的訂單,查看訂單狀態(tài),對(duì)訂單進(jìn)行評(píng)價(jià)和刪除操作。用例描述如表2.9所示。表2.9查看好友列表用例用例標(biāo)識(shí)1.8用例名稱查看訂單用例參與者用戶前置條件已經(jīng)以用戶身份登錄。后置條件點(diǎn)擊我的訂單。用例概述用戶可以查看自己訂單列表?;臼录?.用戶點(diǎn)擊我的訂單。2.系統(tǒng)進(jìn)入我的訂單頁面。3.用戶可以查看購(gòu)買商品的名稱等信息,對(duì)訂單進(jìn)行評(píng)價(jià)和刪除操作。4.用戶對(duì)已發(fā)貨的訂單進(jìn)行評(píng)價(jià)。5.系統(tǒng)顯示評(píng)價(jià)成功,操縱成功字樣。6.用戶點(diǎn)擊刪除訂單。7.系統(tǒng)顯示刪除成功字樣。備選事件流2a未購(gòu)買商品,沒產(chǎn)生訂單,我的訂單顯示未空。備注2.3非功能性需求正確性:系統(tǒng)應(yīng)有簡(jiǎn)潔舒適的頁面,方便用戶使用。健壯性:在系統(tǒng)出現(xiàn)故障時(shí),系統(tǒng)必須提供相應(yīng)的數(shù)據(jù)保護(hù)措施,不能丟失數(shù)據(jù)。性能:系統(tǒng)滿足大量用戶同時(shí)使用,響應(yīng)快速。定期維護(hù)升級(jí)服務(wù)器。安全性:保護(hù)用戶電話地址等信息防止信息泄露。兼容性:能適用于多個(gè)瀏覽器以及不同操作系統(tǒng)。2.4運(yùn)行環(huán)境本軟件系統(tǒng)運(yùn)行所需的軟件環(huán)境如下。(1)操作系統(tǒng)應(yīng)用服務(wù)器:WindowsServer2012或以上版本數(shù)據(jù)庫服務(wù)器:Windows10或以上版本(2)數(shù)據(jù)庫管理系統(tǒng)MySQL8.0
第3章系統(tǒng)設(shè)計(jì)3.1技術(shù)路線SpringBoot:通過自動(dòng)配置機(jī)制,減少了開發(fā)者工作量。SpringBoot提供對(duì)微服務(wù)架構(gòu)的支持;集成Tomact等Web服務(wù)器,可以直接打包成Jar文件通過腳本啟動(dòng)程序;SpringBoot為常用的庫和框、Thymeleaf等提供依賴。SpringBoot提供了內(nèi)置的服務(wù)器,降低了部署的復(fù)雜性。支持多種數(shù)據(jù)訪問方式和提供豐富的文檔和社區(qū)支持,使開發(fā)者能夠更快速的構(gòu)建程序。SpringBoot把Java應(yīng)用程序的開發(fā)和部署方式進(jìn)行優(yōu)化升級(jí),為開發(fā)者帶來更好的開發(fā)體驗(yàn)和效率。Vue.js是一個(gè)流行的前端框架,為開發(fā)者提供了便捷的開發(fā),被廣泛應(yīng)用于前端開發(fā)領(lǐng)域。Vue.js的學(xué)習(xí)曲線平緩,文檔完善,社區(qū)活躍,性能表現(xiàn)優(yōu)秀,適用于各種規(guī)模的項(xiàng)目,并支持與其他框架或庫的無縫集成。同時(shí),Vue.js還支持服務(wù)端渲染,提升網(wǎng)頁加載速度,改善用戶體驗(yàn)。未來,Vue.js有望繼續(xù)引領(lǐng)前端開發(fā)潮流,為用戶帶來更優(yōu)質(zhì)的網(wǎng)頁。B/S架構(gòu)客戶端不需要安裝,有web瀏覽器即可。這種模式大大簡(jiǎn)化了應(yīng)用的部署和維護(hù),因?yàn)樗械挠脩艚缑孢壿嫸技性诜?wù)器端處理,客戶端瀏覽器主要負(fù)責(zé)呈現(xiàn)結(jié)果。B/S架構(gòu)支持跨平臺(tái)訪問,提高了系統(tǒng)的可擴(kuò)展性和可維護(hù)性,同時(shí)也降低了企業(yè)的IT成本,被廣泛應(yīng)用于企業(yè)管理系統(tǒng)、電子商務(wù)、在線服務(wù)等領(lǐng)域。隨著Web技術(shù)的快速發(fā)展,B/S架構(gòu)也不斷演進(jìn),引入了如Ajax、HTML5、WebSocket等先進(jìn)技術(shù),使得基于瀏覽器的應(yīng)用能夠提供豐富的用戶交互體驗(yàn)和高效的數(shù)據(jù)處理能力。這些技術(shù)的應(yīng)用,使得B/S架構(gòu)的應(yīng)用不再局限于簡(jiǎn)單的文本和圖片展示,而是能夠提供與傳統(tǒng)桌面應(yīng)用相媲美的復(fù)雜功能和動(dòng)態(tài)交互。因此,B/S架構(gòu)不僅簡(jiǎn)化了系統(tǒng)的部署和維護(hù),還為用戶帶來了更加便捷和豐富的網(wǎng)絡(luò)應(yīng)用體驗(yàn)。架構(gòu)圖如圖2.1所示。圖2.1B/S架構(gòu)圖MyBatis是一個(gè)流行的Java持久層框架,提供了簡(jiǎn)便的方法來操作數(shù)據(jù)庫。通過MyBatis,開發(fā)者通過簡(jiǎn)單的XML或注解來配置映射語句,來實(shí)現(xiàn)Java對(duì)象與數(shù)據(jù)庫中表的映射。這種方法既保留了定制化SQL的靈活性,又提高了開發(fā)效率,使得MyBatis特別適合處理復(fù)雜的數(shù)據(jù)庫操作,包括聯(lián)合查詢、存儲(chǔ)過程以及高級(jí)映射。3.2軟件體系結(jié)構(gòu)設(shè)計(jì)3.2.1功能結(jié)構(gòu)根據(jù)需求調(diào)研結(jié)果確定購(gòu)物商鋪系統(tǒng)主要包括以下功能模塊,如圖3.1所示。圖3.1系統(tǒng)功能結(jié)構(gòu)圖3.2.2系統(tǒng)架構(gòu)該系統(tǒng)使用的開發(fā)平臺(tái)主要包括Windows操作系統(tǒng)、IntelliJIDEA開發(fā)工具、MySQL數(shù)據(jù)庫、Tomcat服務(wù)器以及JRE/JDK8的Java運(yùn)行環(huán)境。Windows操作系統(tǒng)為開發(fā)者提供了良好的用戶界面和廣泛的兼容性,使開發(fā)工作更加高效和便捷。IntelliJIDEA作為集成開發(fā)環(huán)境,為開發(fā)人員提供了豐富的功能和便捷的編碼體驗(yàn),有助于提高開發(fā)效率和質(zhì)量。MySQL作為一款輕巧快速的關(guān)系型數(shù)據(jù)庫,具有穩(wěn)定可靠的性能和靈活的數(shù)據(jù)存儲(chǔ)方式。Tomcat能夠快速部署和運(yùn)行JavaWeb應(yīng)用程序,提供了穩(wěn)定高效的服務(wù)支持。JRE/JDK8作為Java的運(yùn)行環(huán)境,擁有豐富的類庫和強(qiáng)大的功能,使得開發(fā)人員能夠編寫出高效、穩(wěn)定的Java應(yīng)用程序。整合這些開發(fā)平臺(tái),有助于提高系統(tǒng)的開發(fā)效率和穩(wěn)定性,滿足用戶需求。系統(tǒng)工作流程如下圖3.2所示圖3.2系統(tǒng)工作流程圖3.3數(shù)據(jù)庫設(shè)計(jì)3.3.1概念結(jié)構(gòu)設(shè)計(jì)ER圖如圖3.4所示。圖3.4ER圖3.3.2表的詳細(xì)設(shè)計(jì)通過領(lǐng)域?qū)ο?、業(yè)務(wù)對(duì)象及對(duì)象間關(guān)聯(lián)的分析,對(duì)購(gòu)物商鋪系統(tǒng)數(shù)據(jù)庫表進(jìn)行了設(shè)計(jì),如表3.1-表3.8所示。購(gòu)物商鋪系統(tǒng)用MySQL管理數(shù)據(jù)庫。(1)管理員信息表(t_admin)管理員信息表用于存儲(chǔ)系統(tǒng)管理員的信息,主要字段包括:用戶名、密碼、姓名、頭像、角色標(biāo)識(shí)、電話。表結(jié)構(gòu)如表3.1所示。表3.1管理員信息表(admin)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是IDusernamevarchar255是否用戶名passwordvarchar255是否密碼namevarchar255是否姓名avatarvarchar255是否頭像rolevarchar255是否角色標(biāo)識(shí)phonevarchar255是否電話emailvarchar255是否郵箱(2)管理員信息表(user)用戶信息表用于保存用戶的信息,主要字段包括:用戶ID、用戶名、密碼、姓名、頭像、角色標(biāo)識(shí)、電話、郵箱。表結(jié)構(gòu)如表3.2所示。表3.2用戶信息表(user)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是IDusernamevarchar255是否用戶名passwordvarchar255是否密碼namevarchar255是否姓名avatarvarchar255是否頭像rolevarchar255是否角色標(biāo)識(shí)phonevarchar255是否電話emailvarchar255是否郵箱(3)收貨地址表(address)收貨地址表用于保存用戶收貨地址等信息,主要字段包括:用戶ID、收貨人、收貨地址、聯(lián)系電話。表結(jié)構(gòu)如表3.3所示。表3.3管理員信息表(address)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是IDusernamevarchar255是否用戶名useraddressvarchar255是否收貨地址user_idint是否用戶IDphonevarchar255是否電話(4)商家表(business)商家表用于保存商家的信息,主要字段包括:用戶名、密碼、店鋪名、頭像、角色標(biāo)識(shí)、電話、郵箱、商家介紹、審核狀態(tài)。表結(jié)構(gòu)如表3.4所示。表3.4商家表(business)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是IDusernamevarchar255是否用戶名passwordvarchar255是否密碼namevarchar255是否店鋪名avatarvarchar255是否頭像rolevarchar255是否角色標(biāo)識(shí)phonevarchar255是否電話emailvarchar255是否郵箱descriptionvarchar255是否商家介紹statusvarchar255是否店鋪狀態(tài)(5)評(píng)論表(comment)評(píng)論表用于保存評(píng)論信息,主要字段包括:用戶ID、商品ID、店鋪ID、評(píng)論內(nèi)容、評(píng)論時(shí)間。表結(jié)構(gòu)如表3.5所示。表3.5評(píng)論表(comment)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵user_idint是否用戶IDgoods_idint是否商品IDbusiness_idint是否店鋪IDcontentvarchar255是否評(píng)論內(nèi)容timevarchar255是否評(píng)論時(shí)間(6)商品表(goods)商品表用于保存商品信息,主要字段包括:商品名稱、商品主圖、商品介紹、商品價(jià)格、計(jì)件單位、商品銷量、分類ID、商家ID。。表結(jié)構(gòu)如表3.6所示。表3.6商品表(goods)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵namevarchar255是否商品名稱imgvarchar255是否商品主圖descriptionvarchar255是否商品介紹pricevarchar255是否商品價(jià)格unitvarchar255是否計(jì)件單位countvarchar255是否商品銷量type_idvarchar255是否分類IDbusiness_id商家ID(7)公告表(notice)公告表用于保存公告信息,主要字段包括:標(biāo)題、內(nèi)容、創(chuàng)建時(shí)間、創(chuàng)建人。表結(jié)構(gòu)如表3.7所示。表3.7公告表(admin)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵titlevarchar255是否標(biāo)題contentvarchar255是否內(nèi)容timevarchar255是否創(chuàng)建時(shí)間uservarchar255是否創(chuàng)建人(8)訂單表(orders)訂單表用于保存訂單信息,主要字段包括:訂單ID、商品ID、商家ID、商品數(shù)量、用戶ID、訂單價(jià)格、地址ID、訂單狀態(tài)。。表結(jié)構(gòu)如表3.8所示。表3.8訂單表(orders)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵order_idvarchar255是否訂單IDgoods_idint255是否商品IDbusiness_idint255是否商家IDnumint255是否商品數(shù)量pricedouble255是否訂單價(jià)格address_idint255是否地址IDstatusvarchar255是否訂單狀態(tài)user_idint是否用戶ID(9)分類表(type)分類表用于保存分類信息,主要字段包括:ID、分類名稱、分類描述、分類圖標(biāo)。表結(jié)構(gòu)如表3.9所示。表3.9分類表(type)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵namevarchar255是否分類名稱descriptionvarchar255是否分類描述imgvarchar255是否分類圖標(biāo)(10)購(gòu)物車信息表(cart)購(gòu)物車信息表用于保存加入的商品相關(guān)信息,主要字段包括:用戶ID、商品ID、店鋪ID、數(shù)量。表結(jié)構(gòu)如表3.10所示。表3.10管理員信息表(admin)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵user_idint255是否用戶IDgoods_idint0是否商品IDbusiness_idint255是否店鋪IDnumint255是否數(shù)量(11)收藏信息表(collect)收藏信息表用于保存收藏商品信息,主要字段包括:用戶ID、商品ID、商品ID、店鋪ID。表結(jié)構(gòu)如表3.11所示。表3.11收藏信息表(collect)列名數(shù)據(jù)類型長(zhǎng)度允許空是否主鍵說明idint否是主鍵user_idint255是否用戶IDgoods_idint0是否商品IDbusiness_idint255是否店鋪ID3.4用例實(shí)現(xiàn)3.4.1用戶登錄用例實(shí)現(xiàn)用戶從前臺(tái)界面選擇登錄功能,系統(tǒng)接受登錄請(qǐng)求,跳轉(zhuǎn)登錄界面,輸入用戶名密碼,系統(tǒng)接收輸入信息,進(jìn)行登錄,用戶進(jìn)入系統(tǒng)界面。登錄用例的實(shí)現(xiàn)順序圖如圖3.12所示。圖3.12登錄用例順序圖3.4.2注冊(cè)用例實(shí)現(xiàn)用戶進(jìn)入系統(tǒng)登錄界面,點(diǎn)擊注冊(cè),系統(tǒng)接收注冊(cè)請(qǐng)求,顯示注冊(cè)界面,輸入用戶名密碼和角色,進(jìn)行注冊(cè),檢查合法性后,顯示主界面。注冊(cè)用例的實(shí)現(xiàn)順序圖如圖3.13所示。圖3.13注冊(cè)用例順序圖3.4.3用戶修改個(gè)人資料用例實(shí)現(xiàn)用戶登錄后,進(jìn)入系統(tǒng)首頁界面,輕擊用戶頭像,系統(tǒng)接受請(qǐng)求,跳轉(zhuǎn)用戶個(gè)人信息頁面。用戶修改個(gè)人資料用例的實(shí)現(xiàn)順序圖如圖3.14所示。圖3.14用戶修改個(gè)人資料用例順序圖3.4.4用戶瀏覽商品用例實(shí)現(xiàn)用戶進(jìn)入前臺(tái)頁面,顯示商品頁面,點(diǎn)擊商品,系統(tǒng)接受請(qǐng)求,顯示對(duì)應(yīng)商品頁面。用戶瀏覽商品用例的實(shí)現(xiàn)順序圖如圖3.15所示。圖3.15用戶瀏覽商品用例順序圖3.4.5用戶加入購(gòu)物車用例實(shí)現(xiàn)用戶進(jìn)入前臺(tái)界面,點(diǎn)擊我的購(gòu)物車選項(xiàng),系統(tǒng)跳轉(zhuǎn)購(gòu)物車頁面,用戶瀏覽商品后,選擇加入購(gòu)物車,系統(tǒng)顯示添加成功。用戶加入購(gòu)物車用例的實(shí)現(xiàn)順序圖如圖3.16所示。圖3.16用戶加入購(gòu)物車用例順序圖3.4.6用戶管理地址用例實(shí)現(xiàn)用戶進(jìn)入前臺(tái)界面,選擇我的地址功能,顯示我的地址界面,點(diǎn)擊編輯修改以及刪除地址,檢查信息有效性,系統(tǒng)顯示修改成功,用戶進(jìn)入主頁面。用戶管理地址用例的實(shí)現(xiàn)順序圖如圖3.17所示。圖3.17用戶管理地址用例順序圖3.4.7用戶收藏商品用例實(shí)現(xiàn)用戶進(jìn)入前臺(tái)界面,瀏覽商品并選擇收藏選項(xiàng),系統(tǒng)接收請(qǐng)求,跳轉(zhuǎn)到我的收藏界面,檢查信息有效性,收藏成功,進(jìn)入收藏的商品界面。用戶收藏商品用例的實(shí)現(xiàn)順序圖如圖3.18所示。圖3.18用戶收藏商品用例順序圖3.4.8用戶查看訂單用例實(shí)現(xiàn)用戶進(jìn)入前臺(tái)界面,點(diǎn)擊我的訂單,顯示我的訂單界面,確定收貨后可以評(píng)價(jià)和刪除訂單。用戶查看訂單用例實(shí)現(xiàn)順序圖如圖3.19所示。圖3.19用戶查看訂單用例順序圖3.5對(duì)象設(shè)計(jì)3.5.1模塊設(shè)計(jì)本系統(tǒng)由多模塊構(gòu)成,實(shí)體類(entity)被數(shù)據(jù)訪問層(mapper)所依賴,因?yàn)閷?shí)體類通常會(huì)被用來映射數(shù)據(jù)庫表的字段。業(yè)務(wù)邏輯層(service)依賴數(shù)據(jù)訪問層(mapper),業(yè)務(wù)邏輯層通過數(shù)據(jù)訪問層來操作數(shù)據(jù)庫??刂破鲗樱╟ontroller)依賴業(yè)務(wù)邏輯層(service),控制器層調(diào)用業(yè)務(wù)邏輯層的方法來處理請(qǐng)求并返回響應(yīng)。各模塊間依賴關(guān)系如圖3.20所示。圖3.20模塊依賴關(guān)系圖3.5.2業(yè)務(wù)實(shí)體類的設(shè)計(jì)業(yè)務(wù)實(shí)體包括購(gòu)物商鋪系統(tǒng)所有業(yè)務(wù)中涉及到的獨(dú)立實(shí)體,業(yè)務(wù)實(shí)體設(shè)計(jì)和各個(gè)業(yè)務(wù)實(shí)體之間的關(guān)系如圖3.21所示。圖3.21業(yè)務(wù)實(shí)體及實(shí)體間關(guān)系圖3.5.3業(yè)務(wù)處理類的設(shè)計(jì)(1)用戶業(yè)務(wù)類的設(shè)計(jì)購(gòu)物商鋪系統(tǒng)中所有業(yè)務(wù)實(shí)體間業(yè)務(wù)關(guān)系由業(yè)務(wù)對(duì)象負(fù)責(zé)維護(hù),用戶業(yè)務(wù)設(shè)計(jì)及各個(gè)業(yè)務(wù)對(duì)象之間的關(guān)系如圖3.22所示。圖3.22用戶業(yè)務(wù)對(duì)象關(guān)系圖(2)訂單業(yè)務(wù)類的設(shè)計(jì)訂單業(yè)務(wù)對(duì)象設(shè)計(jì)及各個(gè)業(yè)務(wù)對(duì)象之間的關(guān)系如圖3.23所示。圖3.23訂單業(yè)務(wù)對(duì)象關(guān)系圖(3)用戶評(píng)論業(yè)務(wù)類的設(shè)計(jì)用戶評(píng)論對(duì)象設(shè)計(jì)及各個(gè)業(yè)務(wù)對(duì)象之間的關(guān)系如圖3.24所示。圖3.24用戶評(píng)論業(yè)務(wù)對(duì)象關(guān)系圖(4)地址業(yè)務(wù)類的設(shè)計(jì)地址業(yè)務(wù)對(duì)象設(shè)計(jì)及各個(gè)業(yè)務(wù)對(duì)象之間的關(guān)系如圖3.25所示。圖3.25地址業(yè)務(wù)對(duì)象關(guān)系圖(5)商家業(yè)務(wù)類的設(shè)計(jì)商家業(yè)務(wù)對(duì)象設(shè)計(jì)及各個(gè)業(yè)務(wù)對(duì)象之間的關(guān)系如圖3.26所示。圖3.26家政服務(wù)業(yè)務(wù)對(duì)象關(guān)系圖3.5.4類的描述(1)controller包中類的描述controller包中類的描述如表3.14所示。表3.14controller包中類的描述類名屬性/方法描述AddressControllerAddressServiceaddressService接口add(inaddress:Address):Result添加地址信息deleteById(inid:Integer):Result根據(jù)ID刪除地址信息deleteBatch(inids:Integer[*]):Result批量刪除地址信息updateById(inaddress:Address):Result根據(jù)ID更新地址信息selectById(inid:Integer):Result根據(jù)ID查詢地址信息selectAll(inaddress:Address):Result查詢所有地址信息selectPage(inaddress:Address,inpageNum:Integer,inpageSize:Integer):Result分頁查詢地址信息AdminControllerAdminServiceadminService接口add(inadmin:Admin):Result添加管理員信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除管理員信息ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除管理員信息ResultupdateById(@RequestBodyAdminadmin)更新管理員信息ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢管理員信息ResultselectAll(Adminadmin)查詢所有管理員信息BusinessControllerBusinessServicebusinessService接口Resultadd(@RequestBodyBusinessbusiness)添加商家信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除商家信息ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除商家信息
ResultupdateById(@RequestBodyBusinessbusiness)更新商家信息ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢商家信息ResultselectAll(Businessbusiness)查詢所有商家信息CartControllerCartServicecartService接口Resultadd(@RequestBodyCartcart)添加購(gòu)物車信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除購(gòu)物車信息ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除購(gòu)物車信息ResultupdateById(@RequestBodyCartcart)更新購(gòu)物車信息
ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢購(gòu)物車信息ResultselectAll(Cartcart)查詢所有購(gòu)物車信息CollectControllerCollectServicecollectService接口Resultadd(@RequestBodyCollectcollect)添加收藏信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除收藏信息
ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除收藏信息ResultupdateById(@RequestBodyCollectcollect)更新收藏信息
ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢收藏信息ResultselectAll(Collectcollect)查詢所有收藏信息CommentControllerCommentServicecommentService接口Resultadd(@RequestBodyCommentcomment)添加評(píng)論信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除評(píng)論信息ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除評(píng)論信息ResultupdateById(@RequestBodyCommentcomment)更新評(píng)論信息ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢?cè)u(píng)論信息ResultselectByGoodsId(@RequestParamIntegerid)根據(jù)ID查詢?cè)u(píng)論信息ResultselectAll(Commentcomment)查詢所有評(píng)論信息FileControllerstaticfinalStringfilePath文件路徑Stringport端口StringipIP地址Resultupload(MultipartFilefile)上傳文件
avoidavatarPath(@PathVariableStringflag,HttpServletResponseresponse)獲取文件voiddelFile(@PathVariableStringflag)刪除文件Map<String,Object>wangEditorUpload(MultipartFilefile)編輯器文件上傳接口GoodsControllerGoodsServicegoodsService接口Resultadd(@RequestBodyGoodsgoods)添加商品信息ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除數(shù)據(jù)庫中的商品信息ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除商品信息ResultupdateById(@RequestBodyGoodsgoods)更新商品信息ResultselectById(@RequestParamIntegerid)根據(jù)ID查詢商品ResultselectAll(Goodsgoods)查詢所有商品信息NoticeControllerNoticeServicenoticeService接口Resultadd(@RequestBodyNoticenotice)添加公告ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除公告ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除公告ResultupdateById(@RequestBodyNoticenotice)更新公告ResultselectById(@PathVariableIntegerid)根據(jù)ID查詢公告OrdersControllerOrdersServiceordersService接口Resultadd(@RequestBodyOrdersorders)添加訂單ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除訂單ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除訂單ResultupdateById(@RequestBodyOrdersorders)根據(jù)ID更新訂單ResultselectAll(Ordersorders)獲取所有訂單TypeControllerTypeServicetypeService接口Resultadd(@RequestBodyTypetype)添加分類ResultdeleteById(@PathVariableIntegerid)根據(jù)ID刪除分類ResultdeleteBatch(@RequestBodyList<Integer>ids)批量刪除分類ResultupdateById(@RequestBodyTypetype)根據(jù)ID更新分類ResultselectById(@PathVariableIntegerid)添加好友時(shí)間ResultselectAll(Typetype)根據(jù)ID查詢分類UserControllerUserServiceuserService獲取所有分類Resultadd(@RequestBodyUseruser)接口ResultdeleteById(@PathVariableIntegerid)添加用戶ResultdeleteBatch(@RequestBodyList<Integer>ids)根據(jù)ID刪除用戶ResultupdateById(@RequestBodyUseruser)批量刪除用戶ResultselectById(@PathVariableIntegerid)根據(jù)ID更新用戶ResultselectAll(Useruser)根據(jù)ID查詢用戶獲取所有用戶WebControllerAdminServiceadminService接口BusinessServicebusinessService接口UserServiceuserService接口Resulthello()Resultlogin(@RequestBodyAccountaccount)登錄Resultregister(@RequestBodyAccountaccount)注冊(cè)ResultupdatePassword(@RequestBodyAccountaccount)修改密碼entity包中類的描述entity包中類的描述如表3.15所示。表3.15entity包中類的描述類名屬性/方法描述AddressIntegerid主鍵idIntegeruserId用戶名Stringusername收貨人Stringuseraddress收貨地址Stringphone電話IntegergetId()返回IDvoidsetId(Integerid)設(shè)置ID為指定數(shù)值IntegergetUserId()返回用戶IDvoidsetUserId(IntegeruserId)設(shè)置用戶ID為指定數(shù)值StringgetUsername()返回用戶的用戶名voidsetUsername(Stringusername)設(shè)置用戶的用戶名為指定數(shù)值StringgetUseraddress()返回用戶的地址voidsetUseraddress(Stringuseraddress)設(shè)置用戶的地址為指定數(shù)值StringgetPhone()返回用戶的電話號(hào)碼voidsetPhone(Stringphone)設(shè)置用戶的電話號(hào)碼為指定數(shù)值A(chǔ)dminIntegerid主鍵IdStringusername用戶名Stringpassword密碼Stringname昵稱Stringphone電話Stringemail郵箱Stringavatar頭像Stringrole角色標(biāo)識(shí)IntegergetId()返回IDvoidsetId(Integerid)設(shè)置ID為指定值StringgetUsername()返回用戶的用戶名voidsetUsername(Stringusername)設(shè)置用戶的用戶名為指定數(shù)值StringgetPassword()返回用戶的密碼voidsetPassword(Stringpassword)設(shè)置用戶的密碼為指定值StringgetName()返回用戶昵稱voidsetName(Stringname)設(shè)置用戶昵稱為指定值StringgetPhone()返回用戶電話voidsetPhone(Stringphone)設(shè)置用戶電話為指定值StringgetEmail()返回用戶郵箱voidsetEmail(Stringemail)設(shè)置用戶郵箱為指定值StringgetAvatar()返回用戶頭像voidsetAvatar(Stringavatar)設(shè)置用戶頭像為指定StringgetRole()返回用戶角色voidsetRole(Stringrole)設(shè)置用戶角色為指定值BusinessIntegerid主鍵idStringpassword密碼Stringname店鋪名Stringphone電話Stringemail郵箱Stringavatar頭像Stringrole角色標(biāo)識(shí)Stringdescription商家介紹Stringstatus審核狀態(tài)IntegergetId()主鍵IDvoidsetId(Integerid)設(shè)置ID為指定數(shù)值StringgetUsername()返回用戶名voidsetUsername(Stringusername)設(shè)置用戶名為指定數(shù)值StringgetPassword()返回用戶密碼voidsetPassword(Stringpassword)設(shè)置密碼為指定值StringgetName()返回店鋪名voidsetName(Stringname)設(shè)置店鋪名為指定值StringgetPhone()返回電話voidsetPhone(Stringphone)設(shè)置電話為指定值StringgetEmail()返回郵箱voidsetEmail(Stringemail)設(shè)置郵箱為指定值StringgetAvatar()返回頭像voidsetAvatar(Stringavatar)設(shè)置頭像為指定值StringgetRole()返回角色標(biāo)識(shí)voidsetRole(Stringrole)設(shè)置角色標(biāo)識(shí)為指定值StringgetDescription()返回商家介紹voidsetDescription(Stringdescription)設(shè)置商家介紹為指定值StringgetStatus()返回審核狀態(tài)voidsetStatus(Stringstatus)設(shè)置審核狀態(tài)為指定CartIntegerid主鍵IntegeruserId用戶IDIntegerbusinessId商家IDIntegergoodsId商品IDStringbusinessName店鋪名StringgoodsImg商品主圖StringgoodUnit計(jì)件單位DoublegoodsPrice商品價(jià)格IntegergetId()返回IDvoidsetId(Integerid)設(shè)置ID為指定值IntegergetUserId()返回用戶IDIntegergetBusinessId()返回商家IDIntegergetGoodsId()返回商品IDStringgetBusinessName()返回發(fā)店鋪名StringgetGoodsName()返回商品名StringgetGoodsImg()返回商品主圖StringgetGoodUnit()返回計(jì)件單位DoublegetGoodsPrice()返回商品價(jià)格IntegergetNum()返回?cái)?shù)量voidsetNum(Integernum)設(shè)置數(shù)量為指定值CollectIntegerid主鍵idIntegeruserId用戶IDIntegerbusinessId商家IDIntegergoodsId商品IDStringbusinessName店鋪名StringgoodsName商品名稱StringgoodsImg商品主圖StringgoodUnit計(jì)件單位DoublegoodsPrice商品價(jià)格IntegergetId()返回IDvoidsetId(Integerid)設(shè)置ID為指定值IntegergetUserId()返回用戶IDvoidsetUserId(IntegeruserId)設(shè)置用戶ID為指定值IntegergetBusinessId()返回商家IDIntegergetGoodsId()返回商品IDStringgetBusinessName()返回店鋪名StringgetGoodsName()返回商品名稱StringgetGoodsImg()返回商品主圖DoublegetGoodsPrice()返回商品價(jià)格voidsetGoodsPrice(DoublegoodsPrice)設(shè)置商品價(jià)格為指定值CommentIntegerid主鍵IDIntegeruserId用戶IDIntegerbusinessId商家IDIntegergoodsId商品IDStringbusinessName店鋪名StringgoodsName商品名稱StringuserAvatar用戶頭像StringuserName用戶名Stringtime評(píng)論時(shí)間IntegergetId()返回IDIntegergetUserId()返回用戶IDIntegergetBusinessId()返回商家IDIntegergetGoodsId()返回商品IDStringgetBusinessName()返回店鋪名稱StringgetGoodsName()返回商品名稱StringgetTime()返回評(píng)論時(shí)間StringgetContent()返回評(píng)論內(nèi)容StringgetUserAvatar()返回用戶頭像StringgetUserName()返回用戶名GoodsIntegerid主鍵IDStringname商品名稱Stringdescription商品介紹Stringimg商品主圖Doubleprice商品價(jià)格Stringunit計(jì)件單位IntegertypeId商品分類IDIntegerbusinessId商家IDStringtypeName商品分類StringbusinessName店鋪名NoticeIntegerid主鍵IDStringtitle公告標(biāo)題Stringcontent公告內(nèi)容Stringtime創(chuàng)建時(shí)間Stringuser創(chuàng)建用戶OrdersIntegerid主鍵idIntegeruserId用戶IDIntegerbusinessId商家IDIntegergoodsId商品IDStringorderId訂單IDIntegeraddressId地址IDIntegernum商品數(shù)量Doubleprice商品價(jià)格List<Cart>cartData存儲(chǔ)cartStringstatus訂單狀態(tài)StringbusinessName店鋪名StringgoodsName商品名Stringusername用戶名RelateDTOIntegeruseId用戶IDIntegergoodsId商品IDIntegerindex指數(shù)IntegergetUseId()返回用戶IDIntegergetGoodsId()返回商品IDIntegergetIndex()返回指數(shù)TypeIntegerid主鍵IDStringname分類名稱Stringdescription分類介紹Stringimg分類圖標(biāo)IntegergetId()返回IDStringgetName()返回分類名稱StringgetDescription()返回分類介紹StringgetImg()返回分類圖標(biāo)UserIntegerid主鍵IDStringusername用戶名Stringpassword密碼Stringname昵稱Stringphone電話Stringemail郵箱Stringavatar頭像Stringrole角色標(biāo)識(shí)(3)service包中類的描述Service包中類的描述如表3.16所示。表3.16service包中類的描述類名屬性/方法描述AddressServiceAddressMapperaddressMapper聲明voidadd(Addressaddress)添加一個(gè)地址對(duì)象voiddeleteById(Integerid)根據(jù)ID刪除地址voiddeleteBatch(List<Integer>ids)批量刪除地址,根據(jù)ID列表voidupdateById(Addressaddress)根據(jù)ID更新地址信息AddressselectById(Integerid)根據(jù)ID查詢地址信息List<Address>selectAll(Addressaddress)查詢所有地址信息PageInfo<Address>selectPage(Addressaddress,IntegerpageNum,IntegerpageSize)分頁查詢地址信息AdminServiceAdminMapperadminMapper聲明voidadd(Adminadmin)添加一個(gè)新的管理員到系統(tǒng)中voiddeleteById(Integerid)根據(jù)ID刪除一個(gè)管理員voiddeleteBatch(List<Integer>ids)根據(jù)ID批量刪除管理員voidupdateById(Adminadmin)更新管理員的信息AdminselectById(Integerid)根據(jù)ID檢索管理員List<Admin>selectAll(Adminadmin)根據(jù)特定條件檢索所有管理員PageInfo<Admin>selectPage(Adminadmin,IntegerpageNum,IntegerpageSize)根據(jù)特定條件檢索分頁的管理員列表Accountlogin(Accountaccount)驗(yàn)證賬戶以進(jìn)行登錄voidregister(Accountaccount)在系統(tǒng)中注冊(cè)一個(gè)新賬戶voidupdatePassword(Accountaccount)更新密碼BusinessServiceBusinessMapperbusinessMapper聲明voidadd(Businessbusiness)添加一個(gè)商家voiddeleteById(Integerid)根據(jù)ID刪除一個(gè)商家voiddeleteBatch(List<Integer>ids)批量刪除商家voidupdateById(Businessbusiness)根據(jù)ID更新商家信息BusinessselectById(Integerid)根據(jù)ID查詢商家信息List<Business>selectAll(Businessbusiness)查詢所有符合條件的商家信息PageInfo<Business>selectPage(Businessbusiness,IntegerpageNum,IntegerpageSize)分頁查詢符合條件的商家信息Accountlogin(Accountaccount)賬戶登錄驗(yàn)證voidregister(Accountaccount)注冊(cè)一個(gè)新賬戶voidupdatePassword(Accountaccount)更新賬戶密碼CartServiceCartMappercartMapper聲明voidadd(Cartcart)添加一條購(gòu)物車記錄voiddeleteById(Integerid)根據(jù)ID刪除購(gòu)物車記錄voiddeleteBatch(List<Integer>ids)批量刪除購(gòu)物車記錄voidupdateById(Cartcart)根據(jù)ID更新購(gòu)物車記錄信息CartselectById(Integerid)根據(jù)ID查詢購(gòu)物車記錄List<Cart>selectAll(Cartcart)查詢所有符合條件的購(gòu)物車記錄PageInfo<Cart>selectPage(Cartcart,IntegerpageNum,IntegerpageSize)分頁查詢符合條件的購(gòu)物車記錄CollectServiceCollectMappercollectMapper聲明voidadd(Collectcollect)添加收藏記錄voiddeleteById(Integerid)根據(jù)ID刪除收藏記錄voiddeleteBatch(List<Integer>ids)批量刪除收藏記錄voidupdateById(Collectcollect)根據(jù)ID更新收藏記錄信息CollectselectById(Integerid)根據(jù)ID查詢收藏記錄List<Collect>selectAll(Collectcollect)查詢所有符合條件的收藏記錄PageInfo<Collect>selectPage(Collectcollect,IntegerpageNum,IntegerpageSize)根據(jù)傳入的參數(shù)進(jìn)行分頁查詢CommentServiceCommentMappercommentMapper聲明voidadd(Commentcomment)添加評(píng)論voiddeleteById(Integerid)根據(jù)ID刪除評(píng)論selectTimeStatValue(Map<String,Object>params,Wrapper<FuwupingjiaEntity>wrapper)根據(jù)時(shí)間統(tǒng)計(jì)值和條件查詢服務(wù)評(píng)價(jià)實(shí)體voiddeleteBatch(List<Integer>ids)批量刪除評(píng)論voidupdateById(Commentcomment)根據(jù)ID更新評(píng)論信息CommentselectById(Integerid)根據(jù)ID查詢?cè)u(píng)論信息List<Comment>selectAll(Commentcomment)查詢所有符合條件的評(píng)論信息PageInfo<Comment>selectPage(Commentcomment,IntegerpageNum,IntegerpageSize)分頁查詢符合條件的評(píng)論信息NoticeServiceNoticeMappernoticeMapper聲明voidadd(Noticenotice)添加公告voiddeleteById(Integerid)根據(jù)ID刪除公告voiddeleteBatch(List<Integer>ids)根據(jù)傳入的參數(shù)批量刪除公告voidupdateById(Noticenotice)根據(jù)ID更新公告信息NoticeselectById(Integerid)根據(jù)ID查詢公告信息PageInfo<Notice>selectPage(Noticenotice,IntegerpageNum,IntegerpageSize)根據(jù)傳入的參數(shù)進(jìn)行分頁查詢公告GoodsServiceGoodsMappergoodsMapper聲明UserMapperuserMapper聲明CollectMappercollectMapper聲明CommentMappercommentMapper聲明CartMappercartMapper聲明OrdersMapperordersMapper聲明voidadd(Goodsgoods)添加商品到數(shù)據(jù)庫voiddeleteById(Integerid)根據(jù)ID刪除商品voiddeleteBatch(List<Integer>ids)批量刪除商品GoodsselectById(Integerid)根據(jù)ID查詢商品voidupdateById(Goodsgoods)根據(jù)ID更新商品信息OrderServiceOrdersMapperordersMapper聲明voidadd(Ordersorders)添加訂單到數(shù)據(jù)庫cartMapper.deleteById(cart.getId())根據(jù)購(gòu)物車ID刪除購(gòu)物車條數(shù)voiddeleteById(Integerid)根據(jù)ID刪除訂單voiddeleteBatch(List<Integer>ids)批量刪除訂單voidupdateById(Ordersorders)根據(jù)訂單信息更新訂單List<Orders>selectAll(Ordersorders)查詢所有訂單PageInfo<Orders>selectPage(Ordersorders,IntegerpageNum,IntegerpageSize)根據(jù)傳入的參數(shù)進(jìn)行分頁查詢訂單。UserServiceUserMapperuserMapper分頁查詢voidadd(Useruser)向數(shù)據(jù)庫中添加用戶信息voiddeleteById(Integerid)根據(jù)ID刪除用戶信息voiddeleteBatch(List<Integer>ids)批量刪除用戶信息Accountlogin(Accountaccount)用戶登錄,根據(jù)賬號(hào)信息進(jìn)行驗(yàn)證voidregister(Accountaccount)用戶注冊(cè),添加新用戶賬號(hào)信息voidupdatePassword(Accountaccount)聲明TypeServiceTypeMappertypeMapper向數(shù)據(jù)庫中添加類型信息voidadd(Typetype)根據(jù)ID刪除類型信息voiddeleteById(Integerid)批量刪除類型信息voiddeleteBatch(List<Integer>ids)根據(jù)ID更新類型信息voidupdateById(Typetype)根據(jù)ID查詢類型信息TypeselectById(Integerid)查詢所有類型信息List<Type>selectAll(Typetype)查詢所有類型信息PageInfo<Type>selectPage(Typetype,IntegerpageNum,IntegerpageSize)根據(jù)傳入的參數(shù)進(jìn)行分頁查詢類型信息(4)mapper包中類的描述mapper包中類的描述如表3.17所示。表3.17mapper包中類的描述類名屬性/方法描述AddressMapperinterfaceAddressMapper接口intinsert(Addressaddress)插入地址信息intdeleteById(Integerid)根據(jù)ID刪除地址信息
intupdateById(Addressaddress)根據(jù)ID更新地址信息
AddressselectById(Integerid)根據(jù)ID查詢地址信息
List<Address>selectAll(Addressaddress)查詢所有地址信息AdminMapperinterfaceAdminMapper接口intinsert(Adminadmin)插入管理員信息intdeleteById(Integerid)根據(jù)ID刪除管理員信息intupdateById(Adminadmin)根據(jù)ID更新管理員信息AdminselectById(Integerid)根據(jù)ID查詢管理員信息List<Admin>selectAll(Adminadmin)查詢所有管理員信息BusinessMapperinterfaceBusinessMapper接口intinsert(Businessbusiness)插入商家信息
intdeleteById(Integerid)根據(jù)ID刪除商家信息intupdateById(Businessbusiness)根據(jù)ID更新商家信息BusinessselectById(Integerid)根據(jù)ID查詢商家信息List<Business>selectAll(Businessbusiness)查詢所有商家信息CartMapperinterfaceCartMapper接口intinsert(Cartcart)插入購(gòu)物車信息
intdeleteById(Integerid)根據(jù)ID刪除購(gòu)物車信息
intupdateById(Cartcart)根據(jù)ID更新購(gòu)物車信息CartselectById(Integerid)根據(jù)ID查詢購(gòu)物車信息List<Cart>selectAll(Cartcart)查詢所有購(gòu)物車信息CollectMapperinterfaceCollectMapper接口intinsert(Collectcollect)插入收藏信息intdeleteById(Integerid)根據(jù)ID刪除收藏信息intupdateById(Collectcollect)根據(jù)ID更新收藏信息
CollectselectById(Integerid)根據(jù)ID查詢收藏信息List<Collect>selectAll(Collectcollect)查詢所有收藏信息CommentMapperinterfaceCommentMapper接口intinsert(Commentcomment)插入評(píng)論信息intdeleteById(Integerid)根據(jù)ID刪除評(píng)論信息intupdateById(Commentcomment)根據(jù)ID更新評(píng)論信息CommentselectById(Integerid)根據(jù)ID查詢?cè)u(píng)論信息
List<Comment>selectAll(Commentcomment)查詢所有評(píng)論信息GoodsMapperinterfaceGoodsMapper接口intinsert(Goodsgoods)插入商品信息
intdeleteById(Integerid)根據(jù)ID刪除商品信息intupdateById(Goodsgoods)根據(jù)ID更新商品信息GoodsselectById(Integerid)根據(jù)ID查詢商品信息List<Goods>selectAll(Goodsgoods)查詢所有商品信息NoticeMapperinterfaceNoticeMapper接口intinsert(Noticenotice)插入公告信息intdeleteById(Integerid)根據(jù)ID刪除公告信息intupdateById(Noticenotice)根據(jù)ID更新公告信息NoticeselectById(Integerid)根據(jù)ID查詢公告信息List<Notice>selectAll(Noticenotice)查詢所有公告信息OrdersMapperinterfaceOrdersMapper接口intinsert(Ordersorders)插入訂單信息intdeleteById(Integerid)根據(jù)ID刪除訂單信息intupdateById(Ordersorders)根據(jù)ID查詢訂單信息OrdersselectById(Integerid)查詢所有訂單信息List<Orders>selectAll(Ordersorders)服務(wù)內(nèi)容TypeMapperinterfaceTypeMapper接口intinsert(Typetype)插入類型信息intdeleteById(Integerid)根據(jù)ID刪除類型信息intupdateById(Typetype)根據(jù)ID更新類型信息
TypeselectById(Integerid)根據(jù)ID查詢類型信息List<Type>selectAll(Typetype)查詢所有類型信息UserMapperinterfaceUserMapper接口intinsert(Useruser)插入用戶信息intdeleteById(Integerid)根據(jù)ID刪除用戶信息intupdateById(Useruser)根據(jù)ID更新用戶信息UserselectById(Integerid)根據(jù)ID查詢用戶信息List<User>selectAll(Useruser)查詢所有用戶信息第4章系統(tǒng)實(shí)現(xiàn)4.1核心功能實(shí)現(xiàn)系統(tǒng)后端由java語言編寫,前端使用Vue框架構(gòu)建用戶界面,實(shí)現(xiàn)頁面展示和交互功能;后端使用SpringBoot框架,處理系統(tǒng)的業(yè)務(wù)邏輯和數(shù)據(jù)庫操作,兩者結(jié)合實(shí)現(xiàn)前后分離,節(jié)省時(shí)間便于維護(hù)系統(tǒng)。數(shù)據(jù)庫層選用MySQL作為數(shù)據(jù)存儲(chǔ)和管理工具,實(shí)現(xiàn)數(shù)據(jù)的持久化。4.1.1登錄用戶進(jìn)入系統(tǒng),需要在登錄界面輸入正確信息。如下圖4.1所示。圖4.1登錄界面@PostMapping("/login")publicResultlogin(@RequestBodyAccountaccount){if(ObjectUtil.isEmpty(account.getUsername())||ObjectUtil.isEmpty(account.getPassword())||ObjectUtil.isEmpty(account.getRole())){returnResult.error(ResultCodeEnum.PARAM_LOST_ERROR);}if(RoleEnum.ADMIN.name().equals(account.getRole())){account=adminService.login(account);}if(RoleEnum.BUSINESS.name().equals(account.getRole())){account=businessService.login(account);}if(RoleEnum.USER.name().equals(account.getRole())){account=userService.login(account);}returnResult.success(account);}4.1.2注冊(cè)用戶想要登錄系統(tǒng),需要先在注冊(cè)界面,進(jìn)行注冊(cè)。如下圖4.2所示。圖4.2注冊(cè)界面@PostMapping("/register")publicResultregister(@RequestBodyAccountaccount){if(StrUtil.isBlank(account.getUsername())||StrUtil.isBlank(account.getPassword())||ObjectUtil.isEmpty(account.getRole())){returnResult.error(ResultCodeEnum.PARAM_LOST_ERROR);}if(RoleEnum.ADMIN.name().equals(account.getRole())){adminService.register(account);}if(RoleEnum.BUSINESS.name().equals(account.getRole())){businessService.register(account);}if(RoleEnum.USER.name().equals(account.getRole())){userService.register(account);}returnResult.success();}WebController里的register方法加一個(gè)判斷:if(RoleEnum.BUSINESS.name().equals(account.getRole())){businessService.register(account);}在BusinessService里面的add方法里加一個(gè):if(ObjectUtil.isEmpty(business.getStatus())){business.setStatus(StatusEnum.CHECKING.status);}4.1.3修改個(gè)人資料用戶可以隨時(shí)修改自己的個(gè)人資料。如下圖4.3所示。圖4.3修改個(gè)人資料頁面@PutMapping("/updatePassword")publicResultupdatePassword(@RequestBodyAccountaccount){if(StrUtil.isBlank(account.getUsername())||StrUtil.isBlank(account.getPassword())||ObjectUtil.isEmpty(account.getNewPassword())){returnResult.error(ResultCodeEnum.PARAM_LOST_ERROR);}if(RoleEnu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年蘇州中學(xué)附屬三亞學(xué)校面向社會(huì)公開招聘教師模擬試卷有完整答案詳解
- 2025貴州醫(yī)科大學(xué)附屬口腔醫(yī)院引進(jìn)高層次人才考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解參考
- 2025年中國(guó)貨物雪橇行業(yè)市場(chǎng)分析及投資價(jià)值評(píng)估前景預(yù)測(cè)報(bào)告
- 2025江蘇泰州市中西醫(yī)結(jié)合醫(yī)院招聘高層次衛(wèi)生專業(yè)技術(shù)人才5人考前自測(cè)高頻考點(diǎn)模擬試題有答案詳解
- 2025貴州羅甸縣第一醫(yī)共體板庚分院招聘合同制專業(yè)技術(shù)人員考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(奪冠系列)
- 2025廣西桂林工程職業(yè)學(xué)院人才招聘模擬試卷完整參考答案詳解
- 2025年中國(guó)環(huán)孢素A原料藥行業(yè)市場(chǎng)分析及投資價(jià)值評(píng)估前景預(yù)測(cè)報(bào)告
- 2025安徽六安市中醫(yī)院招聘13人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(易錯(cuò)題)
- 2025年河北石家莊法商中等專業(yè)學(xué)校公開招聘教師37名模擬試卷附答案詳解
- 2025河北秦皇島市公安醫(yī)院招聘14人模擬試卷及參考答案詳解1套
- 技術(shù)專家管理制度
- 2025年云南交投集團(tuán)校園招聘管理人員86人筆試參考題庫附帶答案詳解
- 黑龍江省哈爾濱市第九中學(xué)校2024-2025學(xué)年高二上學(xué)期11月期中考試生物試卷(有答案)
- 2025年小學(xué)語文一年級(jí)第一學(xué)期期中測(cè)試試卷
- 2025年6月上海市高考語文試題卷(含答案)
- (2025年標(biāo)準(zhǔn))籃球免責(zé)協(xié)議書
- 碼頭突發(fā)事件培訓(xùn)
- 2024年湖南省龍山縣衛(wèi)生系統(tǒng)招聘考試(護(hù)理學(xué)專業(yè)知識(shí))題含答案
- 熱點(diǎn)地區(qū)物種多樣性保護(hù)-洞察及研究
- 講義配電房可視化管理標(biāo)準(zhǔn)課件
- 高中音樂(必修)《音樂鑒賞》 (人音版)《家國(guó)情懷的民族樂派》格林卡與穆索爾斯基《荒山之夜》
評(píng)論
0/150
提交評(píng)論