計(jì)算機(jī)科學(xué)與技術(shù)-基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
計(jì)算機(jī)科學(xué)與技術(shù)-基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
計(jì)算機(jī)科學(xué)與技術(shù)-基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
計(jì)算機(jī)科學(xué)與技術(shù)-基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
計(jì)算機(jī)科學(xué)與技術(shù)-基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGEPAGEII基于SSM的宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)摘要:眾所周知,我國(guó)正在邁向全面小康的階段,人民生活水平不斷提高,線上用戶劇增,越來(lái)越多的用戶愿意使用網(wǎng)絡(luò)商城,而宜家燈具種類眾多,價(jià)格實(shí)惠,產(chǎn)品質(zhì)量好。客戶不在滿足于普通的照明方式,需要更多富含藝術(shù)感的燈具裝置在臥室等區(qū)域,宜家燈具商城的設(shè)計(jì)與實(shí)現(xiàn)勢(shì)在必行。本次研究主要是對(duì)宜家燈具商城的設(shè)計(jì)與開(kāi)發(fā)進(jìn)行了一些論述,包括了本商城系統(tǒng)。設(shè)計(jì)與實(shí)現(xiàn)的過(guò)程,設(shè)計(jì)部分上主要對(duì)本燈具商城與數(shù)據(jù)庫(kù)的設(shè)計(jì)進(jìn)行了建模,采用了SpringMvc,Spring,Mybatis框架搭建;實(shí)現(xiàn)的部分主要包擴(kuò)了商城后臺(tái)管理與前臺(tái)管理各個(gè)功能的實(shí)現(xiàn)。本系統(tǒng)實(shí)現(xiàn)的后臺(tái)功能有:宜家用戶管理,燈具一級(jí)分類管理,燈具二級(jí)分類管理,商品管理,燈具訂單管理。前臺(tái)實(shí)現(xiàn)的功能有,購(gòu)物車功能,留言功能,查看燈具的功能。商城系統(tǒng)滿足客戶的瀏覽,購(gòu)物,查看訂單狀態(tài),商家管理員可以進(jìn)行更多細(xì)致的操作,滿足了產(chǎn)品從商戶到客戶的基本流程,操作過(guò)程簡(jiǎn)單,易懂。關(guān)鍵詞:燈具,商城,SSM,JAVA

DesignAndImplementationofIKEALightingMallBasedonSSMAbstract:Asisknowntoall,Chinaismovingtowardsthestageofall-roundwell-off,people'slivingstandardisconstantlyimproving,onlineusersareincreasingrapidly,andmoreandmoreusersarewillingtouseonlineshoppingmall,andikealampsareofmanytypes,affordableprice,goodproductquality.ThecustomerisnolongersatisfiedOrdinarylighting,needmorerichinartisticsenseoflampsandlanternsinstallationinthebedroomandotherareas,thedesignandimplementationofikealampsandlanternsmallisimperative.Thisstudymainlydiscussesthedesignanddevelopmentofikealampstore,includingthestoresystem.Intheprocessofdesignandimplementation,thedesignpartmainlymodeledthedesignofthislampstoreanddatabase,andadoptedtheframeworkofSpringMvc,SpringandMybatis.Partofthemainpackagetoexpandthemallbackgroundmanagementandfrontmanagementoftherealizationofvariousfunctions.Thebackgroundfunctionsofthissystemare:ikeausermanagement,lampclassificationmanagement,lampclassificationmanagement,commoditymanagement,lampordermanagement.Thefunctionofthefrontdesk,shoppingcartfunction,messagefunction,viewlampfunction.Themallsystemcansatisfycustomers'browsing,shoppingandorderstatus,andthebusinessadministratorcancarryoutmoredetailedoperation,whichsatisfiesthebasicflowofproductsfrommerchantstocustomers.Theoperationprocessissimpleandeasytounderstand.Keywords:Lighting,Mall,SSM,Java

目錄TOC\o"1-3"\u第1章緒論 11.1研究背景和意義 11.2國(guó)內(nèi)外研究現(xiàn)狀 21.3本系統(tǒng)研究的主要內(nèi)容 3第2章相關(guān)技術(shù)介紹 42.1Spring框架 42.1.1Ioc與Aop 42.1.2SpringMVC 42.2Mybatis 4第3章系統(tǒng)需求分析 53.1可行性分析 53.2系統(tǒng)的功能需求分析 53.3UML系統(tǒng)建模 6第4章系統(tǒng)的設(shè)計(jì) 84.1系統(tǒng)架構(gòu)設(shè)計(jì) 84.2系統(tǒng)的功能模塊結(jié)構(gòu)設(shè)計(jì) 84.2.1用戶功能模塊 84.3數(shù)據(jù)庫(kù)模型設(shè)計(jì) 104.3.1數(shù)據(jù)庫(kù)概念設(shè)計(jì) 104.3.2數(shù)據(jù)庫(kù)表概述 11第5章系統(tǒng)的實(shí)現(xiàn) 155.1商城后臺(tái)管理模塊 155.1.1管理員登錄模塊 155.1.2后臺(tái)管理用戶模塊 165.1.3后臺(tái)管理商品分類 165.1.4后臺(tái)管理商品信息 185.1.5后臺(tái)管理訂單模塊 195.1.6后臺(tái)管理發(fā)貨功能 205.1.7后臺(tái)留言管理模塊 215.2商城前臺(tái)功能模塊 225.2.1商城首頁(yè)的實(shí)現(xiàn) 225.2.2用戶注冊(cè)功能實(shí)現(xiàn) 235.2.3用戶登錄功能實(shí)現(xiàn) 245.2.4用戶留言功能實(shí)現(xiàn) 255.2.5商品展示功能實(shí)現(xiàn) 265.2.6用戶購(gòu)物車功能 265.2.7用戶支付功能實(shí)現(xiàn) 275.2.8用戶確認(rèn)收貨功能 28第6章系統(tǒng)測(cè)試 296.1測(cè)試目的 296.2測(cè)試方法 296.3測(cè)試用例 296.3.1管理員模塊測(cè)試 296.3.2前臺(tái)用戶模塊測(cè)試 29第7章結(jié)束語(yǔ) 317.1全文總結(jié) 317.2展望 31參考文獻(xiàn) 32致謝 33PAGEPAGE33第1章緒論1.1研究背景和意義從1949年到今日,計(jì)算機(jī)火速發(fā)展,發(fā)展的速度跟光速一樣快,世界各地的人也越來(lái)越喜歡用計(jì)算機(jī)保存數(shù)據(jù),錄入數(shù)據(jù)等方面,隨著90年電商的發(fā)展,我國(guó)第一批電商人才如馬云到美國(guó)學(xué)習(xí)了電商技術(shù),把網(wǎng)頁(yè)編程技術(shù)帶回了中國(guó),把電商項(xiàng)目的起步設(shè)計(jì)思想也帶回了中國(guó),由此,電商項(xiàng)目在中國(guó)大火,越來(lái)越多的電商功項(xiàng)目,越來(lái)越豐富的電商類型,以多形式多樣化的技術(shù)得以發(fā)展。隨著馬云帶動(dòng)中國(guó)電商項(xiàng)目的興起,人們思想也越來(lái)越開(kāi)放,不在拘泥于線下購(gòu)物,03年起,阿里巴巴就偷偷的已經(jīng)發(fā)起了調(diào)查,如果有一種方式讓你在家挑衣服,過(guò)不了多久就有人給你送過(guò)來(lái),這種方式你們喜歡嗎類似這種的社會(huì)調(diào)研調(diào)查。結(jié)果人們都非常渴望向往這種模式,得下結(jié)論,這種電商模式被稱為B2C模式。隨著計(jì)算機(jī)在我國(guó)10年前幾年的快速發(fā)展,越來(lái)越多的人愿意,開(kāi)始接觸計(jì)算機(jī),慢慢地,悄悄地,電商行業(yè)在我們身邊悄然發(fā)展起來(lái)了。到了08年,我們身邊開(kāi)始有了網(wǎng)上商店,那段時(shí)間在我們身邊看來(lái)并不被大眾接受,很多商家被冠以了騙子,給了錢(qián)不發(fā)貨等情況,其實(shí),很多商家并沒(méi)有錯(cuò),而是那段時(shí)間物流還沒(méi)發(fā)展起來(lái),那段時(shí)間僅僅只有郵寄還有沒(méi)發(fā)展起來(lái)的順豐快遞,當(dāng)物流發(fā)展起來(lái)以后,線下的傳統(tǒng)商店生意越來(lái)越差,網(wǎng)上商城大火。在那個(gè)時(shí)間階段,還有一小部分人們認(rèn)為網(wǎng)上商城不安全,選的東西跟上傳的圖片有差異等等,但這些聲音阻擋不了電子商城B2C的起興,馬云抓準(zhǔn)了時(shí)機(jī),看準(zhǔn)了線下傳統(tǒng)商店也可以入駐到淘寶,于是就形成了百花齊放的淘寶店鋪,反正賺錢(qián)的是店家,方便的是購(gòu)買(mǎi)者,于是又過(guò)了一個(gè)階段,更多的人喜歡在網(wǎng)上看店鋪找好尺寸跟圖片,去線下找這種符合他們內(nèi)心標(biāo)準(zhǔn)的產(chǎn)品,當(dāng)時(shí),媒體稱這種時(shí)代為上看下買(mǎi),人們也慢慢接受了這種模式。隨著程序員技術(shù)的越來(lái)越好,第三方支付的興起,沒(méi)錯(cuò),阿里巴巴弄了個(gè)支付寶,它的出現(xiàn),告訴了世人,阿里就是專門(mén)為商家,為用戶服務(wù)的,有了支付寶以后,馬云團(tuán)隊(duì)還研究購(gòu)買(mǎi)了超級(jí)計(jì)算機(jī),把服務(wù)器部署到各個(gè)區(qū)域,研發(fā)了各種中間件,可以實(shí)現(xiàn)負(fù)載均衡的服務(wù)器,把老年代的技術(shù)直接替換成了新年代的服務(wù)技術(shù),出現(xiàn)了低流量可以看所有商品,實(shí)現(xiàn)海量并發(fā),海量購(gòu)買(mǎi),海量結(jié)賬也不會(huì)出現(xiàn)安全故障的時(shí)代,我稱之為網(wǎng)購(gòu)時(shí)代,網(wǎng)購(gòu)不再拘泥于青年人,中年人了,也吸引了很多會(huì)用計(jì)算機(jī)的小孩跟老人,促成全民購(gòu)物時(shí)代。所以說(shuō),在全民購(gòu)物時(shí)代中,宜家燈具商城的研究出現(xiàn)是很有意義的,一有前人的經(jīng)驗(yàn),保障了安全的起步。二是在大時(shí)代面前,遵守當(dāng)今的規(guī)矩,是有幫助的,這并不是隨波逐流,而是跟上了時(shí)代的步伐。1.2國(guó)內(nèi)外研究現(xiàn)狀因?yàn)榇蠡ヂ?lián)網(wǎng)年代的來(lái)臨,B2C模式給阿里巴巴,京東等電商商城公司帶來(lái)了巨大盈利,方便愜意的生活方式以及大眾的選擇也給人們帶來(lái)新的選擇,用好的平臺(tái)來(lái)購(gòu)買(mǎi)好的商品。其實(shí),從90年代開(kāi)始,海外就已經(jīng)在研究新的銷售模式了,他們發(fā)現(xiàn)計(jì)算機(jī)其實(shí)可以不僅僅用于單純的記錄數(shù)據(jù),從我查閱的資料來(lái)看,最早的電商項(xiàng)目不是用于商用,而是用于簡(jiǎn)單的銀行錄入數(shù)據(jù),圖形界面及其簡(jiǎn)陋,錄入數(shù)據(jù)還需要人工錄入,效率低,不實(shí)在。但隨著網(wǎng)頁(yè)時(shí)代的來(lái)臨,國(guó)外大神們推出了文本編輯語(yǔ)句,就是網(wǎng)頁(yè)三劍客,在當(dāng)時(shí),引起了全球風(fēng)靡,當(dāng)當(dāng)時(shí)技術(shù)的不全面,還是使用靜態(tài)的網(wǎng)頁(yè),談不上發(fā)展電商項(xiàng)目的地步,直到亞馬遜的出現(xiàn)。經(jīng)研究表明,亞馬遜已經(jīng)用了好幾年的時(shí)間做市場(chǎng)調(diào)研,這個(gè)時(shí)間上保守用了8年,耗費(fèi)了大量的時(shí)間,金錢(qián),人力,物力,用腦圖畫(huà)出B2C模式的研究,提出了猜想,沒(méi)錯(cuò),就是電子商城的猜想。在計(jì)劃的起步階段,他們跟微軟公司合作,聘請(qǐng)了50多個(gè)資深程序員,招募了各地名牌大學(xué)生進(jìn)行第一個(gè)電商項(xiàng)目的著手研究,要知道,當(dāng)時(shí)的編程都是用于系統(tǒng)上,幾乎沒(méi)有使用在網(wǎng)站上,而且也沒(méi)有店鋪?zhàn)孕屑尤?,可想而知,能?zhí)行這種項(xiàng)目需要花費(fèi)多少的資源,但他們挺住了。第一個(gè)電商平臺(tái),真正作用于店鋪的平臺(tái)出現(xiàn)了。從2015年到至今,我國(guó)的電商平臺(tái)研究的比國(guó)外更透徹,因?yàn)槲覈?guó)經(jīng)濟(jì)快速發(fā)展,人民生活水平日益增長(zhǎng),最主要的是我國(guó)店鋪商家多,不怕單純一種商品被壟斷,我國(guó)的電商店鋪是面向全部民眾的,從企業(yè)到農(nóng)民都有他們各自不同的內(nèi)部業(yè)務(wù),相反,國(guó)外入鋪電商平臺(tái)門(mén)檻太高了,經(jīng)資料顯示,美國(guó)入鋪一個(gè)電商平臺(tái),需要耗費(fèi)大量錢(qián)財(cái),要開(kāi)域名,服務(wù)器,他們的發(fā)展已然偏向資本發(fā)展,是走不遠(yuǎn)的,相反我們國(guó)家的電商項(xiàng)目的入鋪簡(jiǎn)單,域名可以申請(qǐng),只需要提供身份證號(hào)碼,相貌的照片,以及一系列的產(chǎn)品的描述,通過(guò)質(zhì)量檢測(cè)即可入戶。不同電商商城還有著不同特殊業(yè)務(wù),比如淘寶有它專屬的支付寶,外帶花唄等預(yù)支付支付手段,京東的京東快送,說(shuō)起京東,京東雖然今年不慍不火,但它的老板是真的很有智慧,比如他把各個(gè)商品派送到各地倉(cāng)庫(kù),分布式發(fā)送,消費(fèi)者不拘束那點(diǎn)送貨費(fèi)用,只要你快,就給你錢(qián)的口號(hào)被京東消費(fèi)者說(shuō)出,這種競(jìng)爭(zhēng)模式,是不是側(cè)面說(shuō)明我們電商的發(fā)展興起,其次,越來(lái)越多自家的企業(yè)不在拘束于入駐阿里,京東等店鋪,他們追求了自身的業(yè)務(wù),做自己的主人,從入庫(kù)到派送,更多的業(yè)務(wù)更細(xì)致,更明確,更快,更方便,更適合人們?nèi)ナ褂谩?.3本系統(tǒng)研究的主要內(nèi)容本設(shè)計(jì)主要研究的是電商系統(tǒng),為了搭上電商火熱的班車,研究能在網(wǎng)站上購(gòu)買(mǎi)燈具,基于SSM框架的整合與開(kāi)發(fā)。Spring,Spring

MVC和MyBatis三個(gè)框架的整合,開(kāi)發(fā)時(shí)更方便,代碼高內(nèi)聚低耦合。本系統(tǒng)研究的主要內(nèi)容是從消費(fèi)者以及生產(chǎn)者的關(guān)系來(lái)闡述的,如何讓消費(fèi)者更快拿到商品,如何幫助商家更快出售商品是本文的主要內(nèi)容,主要是通過(guò)后臺(tái)管理多商品,前臺(tái)把商品給用戶瀏覽,以MyBatis作為持久層,SpringMvc作為處理請(qǐng)求,返回請(qǐng)求的業(yè)務(wù)層處理,這就是本系統(tǒng)研究的主要內(nèi)容。

第2章相關(guān)技術(shù)介紹2.1Spring框架Spring具有面向切面的編程的思想(Aop),以控制反轉(zhuǎn)(Ioc)作為容器,是一個(gè)普遍認(rèn)知的輕量級(jí),非侵入式的框架,它集成包含了JDO等第三方API,強(qiáng)調(diào)了面向?qū)ο蟮脑O(shè)計(jì),用接口開(kāi)發(fā)就是Spring的初衷。2.1.1Ioc與AopIoc是一個(gè)容器,也可以當(dāng)作是OOP(面向?qū)ο螅┧枷刖幊痰脑O(shè)計(jì)原則,它可以大大的降低了代碼之間的耦合度,它常用的使用方式有兩種,一種是依賴注入(DI)的方式,另外一種是依賴查找,本人在本文中使用的是依賴注入,我可以通過(guò)注解注入把我的Bean添加到Spring容器中,讓Spring做管理。Aop是面向切面編程,它需要找到一個(gè)方法的或一個(gè)業(yè)務(wù)的切面,把它橫切,在這個(gè)切面的業(yè)務(wù)執(zhí)行前,執(zhí)行后,添加相關(guān)的操作,這就是Aop,它大大的降低了代碼的耦合度,是Spring的精髓。本人在宜家燈具商城的開(kāi)發(fā)中,使用了Aop配置了日志,事務(wù),異常處理。2.1.2SpringMVCSpringMVC是Spring的一個(gè)mvc組件,它既保留了傳統(tǒng)的MVC開(kāi)發(fā)模式,M(Model),V(View),C(Controller)模型,視圖,控制器,用新增了我們常用的視圖解析器等等減少代碼量的工具,它把所有接受的請(qǐng)求放入到一個(gè)處理器鏈,讓處理相關(guān)業(yè)務(wù)的處理器來(lái)處理相應(yīng)的業(yè)務(wù),返回響應(yīng)給用戶,SpringMVC在本文中常用的注解有@Controller,把它聲明為控制器,從而給Spring做管理。2.2MybatisMybatis是一個(gè)在ibtis基礎(chǔ)上晉升的一款優(yōu)秀的持久層框架,也是作為SSM框架的持久層的工具。

第3章系統(tǒng)需求分析3.1可行性分析在任何一個(gè)系統(tǒng)的開(kāi)發(fā)前,都需要客戶與商戶進(jìn)行需求分析,首先需要對(duì)用戶的使用配置,開(kāi)發(fā)者的能力的技術(shù)可行性,經(jīng)濟(jì)可行性,是否出動(dòng)法律的法律可行性。一、用戶配置使用可行性用戶在使用前臺(tái)用戶模塊時(shí),只需要有一個(gè)能渲染頁(yè)面的配置就可以,配置低,實(shí)用性高。二、開(kāi)發(fā)者的技術(shù)可行性開(kāi)發(fā)者在校時(shí)已經(jīng)解除了JAVAEE的相關(guān)基礎(chǔ),也有一定的JavaWeb開(kāi)發(fā)經(jīng)驗(yàn),數(shù)據(jù)庫(kù)建模的能力,與用戶的需求分析對(duì)接無(wú)溝通困難,且系統(tǒng)的流程業(yè)務(wù)比較清晰,開(kāi)發(fā)者也比較熟悉電子商城的業(yè)務(wù)邏輯,在技術(shù)可行性上基本上是沒(méi)有任何問(wèn)題的。三、經(jīng)濟(jì)開(kāi)銷方面的經(jīng)濟(jì)可行性 開(kāi)發(fā)者使用的是免費(fèi)的Eclipse開(kāi)源開(kāi)發(fā)工具,插入了支持Spring的插件以及相關(guān)業(yè)務(wù)包,Mysql的安裝也是安裝官網(wǎng)免費(fèi)版本,不存在收費(fèi)行為。在經(jīng)濟(jì)的可行性上也沒(méi)有任何問(wèn)題。四、是否違法侵權(quán)的法律可行性 開(kāi)發(fā)者使用的SSM以及相關(guān)連接池的jar包都是從阿里云上面的開(kāi)源社區(qū)下載的,只要不用于商用都不會(huì)違法,MySQL視圖工具使用的是navicat12試用版(免費(fèi)使用30天),PowerDeigner本人使用的是公司內(nèi)部已購(gòu)買(mǎi)的賬號(hào),前端框架使用的是傳統(tǒng)的開(kāi)源OA的EasyUi,只要不用于商用,就不會(huì)觸犯法律。3.2系統(tǒng)的功能需求分析用戶登錄模塊:后臺(tái)使用者通過(guò)用戶名或者郵箱作為賬號(hào),以及加上用戶的密碼匹配成功后即可登錄成功。用戶的商城前臺(tái)模塊:用戶可以瀏覽商品,用戶可以模糊查詢商品,如果用戶需要購(gòu)買(mǎi)產(chǎn)品,需要先登錄,否則會(huì)彈出登錄頁(yè)面,登錄后,用戶可以查看購(gòu)物車以及下單的狀態(tài),也可以對(duì)產(chǎn)品進(jìn)行留言。管理員后臺(tái)模塊:管理員可以查看所有用戶的信息,以及產(chǎn)品的一級(jí)分類二級(jí)分類的管理,也可以對(duì)每個(gè)訂單的狀態(tài)進(jìn)行調(diào)整。3.3UML系統(tǒng)建模1.用戶功能用例圖圖3-1用戶功能用例圖圖3-1是用戶的功能用例圖,本系統(tǒng)采用的是Session寫(xiě)的購(gòu)物車,所以用戶必須登錄,激活登錄狀態(tài),才可以進(jìn)行購(gòu)買(mǎi),用戶如果沒(méi)有賬號(hào)登錄,可以點(diǎn)擊注冊(cè)按鈕填寫(xiě)信息激活賬號(hào),激活以后可以進(jìn)行登錄,登錄完成可以查看物品,搜索物品,根據(jù)產(chǎn)品的一級(jí)分類,二級(jí)分類找到相應(yīng)的燈具,然后點(diǎn)擊圖片可以查看物品的詳情,最后進(jìn)行購(gòu)買(mǎi),在購(gòu)物車可以找到購(gòu)買(mǎi)的產(chǎn)品以及是否支付,支付后可查看訂單有沒(méi)有發(fā)貨。2.后臺(tái)商家管理員用例圖圖3-2后臺(tái)管理員用例圖圖3-2是后臺(tái)管理員的功能用例圖,當(dāng)管理員在后臺(tái)登錄頁(yè)面登錄后,可以查看用戶的相關(guān)信息,商品一級(jí)分類信息的管理,商品二級(jí)分類信息的管理,可以查看是哪個(gè)用戶對(duì)哪個(gè)商品發(fā)起的留言,后臺(tái)管理員可以對(duì)這個(gè)留言進(jìn)行管理,從而實(shí)現(xiàn)控制輿論的操作,也可以對(duì)商品進(jìn)行管理。最后,是查看訂單的狀態(tài),查看哪些訂單是用戶發(fā)起未完成的,用戶發(fā)起未支付,用戶支付為送貨,用戶收獲未確認(rèn)等狀態(tài)。后臺(tái)管理員是專屬的商戶管理員特有的賬號(hào)密碼,所以不能通過(guò)本系統(tǒng)隨意添加,只能通過(guò)數(shù)據(jù)庫(kù)進(jìn)行語(yǔ)句操作添加賬號(hào)密碼,每個(gè)后臺(tái)管理員都擁有對(duì)所有商品所有用戶進(jìn)行操作的最高權(quán)限,所以每一步操作都必須謹(jǐn)慎。

第4章系統(tǒng)的設(shè)計(jì)4.1系統(tǒng)架構(gòu)設(shè)計(jì)系統(tǒng)的成員只有兩個(gè),一個(gè)是用戶,一個(gè)是商家,用戶具有查看物品,購(gòu)買(mǎi)物品,用戶注冊(cè),查看自己的訂單。商家可以管理商品,查看用戶信息,訂單管理。項(xiàng)目的整體功能結(jié)構(gòu)分解如圖4-1所示:圖4-1系統(tǒng)的功能模塊結(jié)構(gòu)圖4.2系統(tǒng)的功能模塊結(jié)構(gòu)設(shè)計(jì)4.2.1用戶功能模塊用戶模塊可先分為四大模塊,有用戶注冊(cè),查看物品,購(gòu)買(mǎi)物品,查看訂單燈等功能,如圖4-2所示:圖4-2用戶功能模塊結(jié)構(gòu)圖用戶注冊(cè)功能:因?yàn)橛脩粢褂玫劫?gòu)買(mǎi)的功能,必須要道路,要把用戶的賬號(hào)激活,才能使用購(gòu)買(mǎi)的功能,否則會(huì)彈出請(qǐng)登錄頁(yè)面,所以要有注冊(cè)這個(gè)模塊。查看物品功能:查看物品指的是用戶登錄前或者登錄后,可以通過(guò)導(dǎo)航欄的一級(jí)分類,二級(jí)分類選擇要用看的物品,也可以在導(dǎo)航欄處搜索物品,查找到物品的圖片名字后,點(diǎn)擊圖片的詳情即可查看到該物品的詳情信息,點(diǎn)擊購(gòu)買(mǎi)。購(gòu)買(mǎi)物品功能:用戶找到想要的產(chǎn)品燈具時(shí),可以點(diǎn)擊購(gòu)買(mǎi),購(gòu)買(mǎi)可選取數(shù)量,購(gòu)買(mǎi)后在購(gòu)物車可以看到。查看訂單功能:當(dāng)用戶下單后,可實(shí)時(shí)查看用戶的訂單處于什么狀態(tài),比如支付后等待商家送貨狀態(tài)等等。4.2.2商城管理員功能模塊管理員模塊克縣分為用戶信息管理模塊,商品信息分類模塊,訂單管理模塊,如圖4-3所示:圖4-3商城管理員功能模塊結(jié)構(gòu)圖用戶信息管理功能模塊:管理員登錄進(jìn)入后臺(tái)管理頁(yè)面后,點(diǎn)擊左方的Z-tree數(shù)型節(jié)點(diǎn)中的用戶管理,可以對(duì)用戶進(jìn)行相關(guān)的curd操作,也可以把有不良言論的用戶進(jìn)行刪除。商品信息分類管理:商品管理員可以對(duì)燈具的一級(jí)分類,燈具二級(jí)分類進(jìn)行管理,可增加,可刪除,可修改,但二級(jí)分類是建立在已有的一級(jí)分類以上才能操作,也可以對(duì)商品進(jìn)行添加,去除,修改,燈具商品是建立于二級(jí)分類上邊的產(chǎn)物,所以必須要一級(jí)一級(jí)儲(chǔ)備下來(lái)。訂單管理功能模塊:商家在這個(gè)函數(shù)模塊上可以查看訂單的各個(gè)狀態(tài),并且可以修改訂單的狀態(tài)。4.3數(shù)據(jù)庫(kù)模型設(shè)計(jì)宜家燈具商城的數(shù)據(jù)庫(kù)模型如圖4-4所示:圖4-4宜家商城數(shù)據(jù)庫(kù)模型圖4.3.1數(shù)據(jù)庫(kù)概念設(shè)計(jì)(1)用戶、購(gòu)物車、商品之間的關(guān)系圖如圖4-5所示:圖4-5用戶、購(gòu)物車、商品E-R圖訂單,用戶關(guān)系圖如圖4-6所示:圖4-6訂單、用戶E-R圖4.3.2數(shù)據(jù)庫(kù)表概述根據(jù)數(shù)據(jù)庫(kù)建模,設(shè)計(jì)出表單的字段,以及他們的實(shí)體,下面是各個(gè)表的詳細(xì)信息,由PowerDeisnger導(dǎo)出:所有表概況如表4-1所示:表4-1數(shù)據(jù)庫(kù)建模圖概念名稱物理名稱billitembillitemcategorycategorycategorysecondcategorysecondorderitemorderitemordersordersproductproductshopcartitemshopcartitemuseruser管理員表(id,賬號(hào),密碼)如表4-2所示:表4-2管理員表代碼注釋數(shù)據(jù)類型主鍵描述auid管理員IDintTRUE存儲(chǔ)管理員自身的idusername賬號(hào)varchar(255)FALSE存儲(chǔ)賬號(hào)名password密碼varchar(255)FALSE存儲(chǔ)密碼值訂單項(xiàng)(訂單id,數(shù)量,價(jià)錢(qián),商品id)如表4-3所示:表4-3訂單項(xiàng)表代碼注釋數(shù)據(jù)類型主鍵描述billid訂單idintTRUE訂單自身idcount數(shù)量intFALSE存儲(chǔ)數(shù)量ptotal價(jià)錢(qián)doubleFALSE存儲(chǔ)價(jià)錢(qián)pid商品idintFALSE存儲(chǔ)商品id燈具一級(jí)分類表(一級(jí)分類id,一級(jí)分類名)如表4-4所示:表4-4燈具一級(jí)分類表代碼注釋數(shù)據(jù)類型主鍵描述cid一級(jí)分類idintTRUE存儲(chǔ)idcname分類名稱varchar(255)FALSE存儲(chǔ)分類名燈具二級(jí)分類表(二級(jí)分類id,二級(jí)分類名,一級(jí)分類id)如表4-5所示:表4-5燈具二級(jí)分類表代碼注釋數(shù)據(jù)類型主鍵描述csid二級(jí)分類idintTRUE存儲(chǔ)自身idcsname分類名稱varchar(255)FALSE存儲(chǔ)分類名cid一級(jí)分類idintFALSE存儲(chǔ)一級(jí)分類id訂單狀態(tài)(訂單id,商品的購(gòu)買(mǎi)總數(shù),總價(jià)錢(qián),商品id,訂單的id)如表4-6所示:表4-6訂單狀態(tài)表代碼注釋數(shù)據(jù)類型主鍵描述oiid訂單idintTRUE存儲(chǔ)訂單idcount總數(shù)intFALSE存儲(chǔ)總數(shù)subtotal總價(jià)錢(qián)doubleFALSE存儲(chǔ)總價(jià)錢(qián)pid商品idintFALSE存儲(chǔ)商品idoid訂單項(xiàng)idintFALSE存儲(chǔ)訂單項(xiàng)id商品表(商品id,商品名稱,市場(chǎng)價(jià),宜家價(jià),圖片,商品的描述信息,上架的時(shí)間日期,宜家燈具的二級(jí)分類)如表4-7所示:表4-7商品表代碼名稱數(shù)據(jù)類型主鍵描述pid商品idintTRUE存儲(chǔ)商品idpname名稱varchar(255)FALSE存儲(chǔ)名稱market_price市場(chǎng)價(jià)doubleFALSE存儲(chǔ)市場(chǎng)價(jià)shop_price宜家價(jià)doubleFALSE存儲(chǔ)宜家價(jià)image圖片地址varchar(255)FALSE存儲(chǔ)圖片地址pdesc產(chǎn)品描述varchar(5000)FALSE存儲(chǔ)產(chǎn)品描述pdate上架日期timestampFALSE存儲(chǔ)上架日期csid二級(jí)分類idintFALSE存儲(chǔ)二級(jí)分類id購(gòu)物車表(購(gòu)物車id,用戶id,商品id,商品數(shù)目,單價(jià),總價(jià)錢(qián),商品名稱)如下表4-8所示:表4-8購(gòu)物車表代碼名稱數(shù)據(jù)類型主鍵描述cartitemidIdintTRUE存儲(chǔ)Iduid用戶idintFALSE存儲(chǔ)用戶idpid產(chǎn)品idintFALSE存儲(chǔ)產(chǎn)品idpcount商品數(shù)目intFALSE存儲(chǔ)商品數(shù)目price單價(jià)doubleFALSE存儲(chǔ)單價(jià)image圖片varchar(255)FALSE存儲(chǔ)圖片ptotal總價(jià)doubleFALSE存儲(chǔ)總價(jià)pname產(chǎn)品名varchar(255)FALSE存儲(chǔ)產(chǎn)品名用戶表(用戶id,用戶名,用戶密碼,姓名,游戲,手機(jī)號(hào),地址,狀態(tài))如下表4-9所示:表4-9用戶表代碼名稱數(shù)據(jù)類型主鍵描述uid用戶idintTRUE存儲(chǔ)用戶idusername賬號(hào)varchar(255)FALSE存儲(chǔ)賬號(hào)password密碼varchar(255)FALSE存儲(chǔ)密碼name用戶真名varchar(255)FALSE存儲(chǔ)用戶真名email郵箱varchar(255)FALSE存儲(chǔ)郵箱phone電話號(hào)碼varchar(255)FALSE存儲(chǔ)電話號(hào)碼addr地址varchar(255)FALSE存儲(chǔ)地址

第5章系統(tǒng)的實(shí)現(xiàn)本系統(tǒng)主要分為,前臺(tái)的商城用戶模塊和后臺(tái)管理模塊實(shí)現(xiàn):5.1商城后臺(tái)管理模塊因?yàn)榍芭_(tái)商城所展示的燈具,分類,以及用戶所看到的訂單追蹤都是由后臺(tái)管理員進(jìn)行管理。5.1.1管理員登錄模塊宜家燈具商城管理人員需要從管理員后臺(tái)模塊登錄,需要登錄管理員賬號(hào),登錄的管理員密碼,如果賬號(hào)密碼校驗(yàn)成功,則進(jìn)入管理員頁(yè)面,反之登錄失敗。登錄成功后,進(jìn)入宜家燈具管理員后臺(tái)頁(yè)面,由Iframe標(biāo)簽嵌入top的網(wǎng)頁(yè)。管理員登錄頁(yè)面如圖5-1所示,宜家管理員匹配成功后進(jìn)入的宜家管理后臺(tái)如圖5-2所示。圖5-1宜家燈具管理員登錄頁(yè)面圖5-2宜家燈具管理員頁(yè)面管理員驗(yàn)證賬號(hào)密碼的核心代碼如下: AdminuseradminuserLogin=userService.adminUser_login(username,password); if(adminuserLogin==null){ model.addAttribute("message","匹配失敗"); return"admin/index"; } request.getSession().setAttribute("adminuserLogin",adminuserLogin); return"admin/home";5.1.2后臺(tái)管理用戶模塊后臺(tái)管理用戶模塊指的是管理員點(diǎn)擊左邊導(dǎo)航欄可以進(jìn)行對(duì)用戶信息的預(yù)覽,查看用戶的相關(guān)信息,如電話號(hào)碼,地址,用戶可以自行修改信息,管理員可以刪除會(huì)員的信息,效果圖如圖5-3所示:圖5-3用戶管理模塊效果圖用戶管理模塊實(shí)現(xiàn)核心代碼如下:@RequestMapping("/admin/admin_findAll")//映射路徑publicList<User>SelectAllUser()throwsException{ Useruser=newUser(); returnuserMapper.selectByExample(user);//查詢所有用戶放入集合 }5.1.3后臺(tái)管理商品分類因?yàn)闊艟哌^(guò)多,種類頻繁,為了避免用戶查找燈具難度過(guò)高,所以設(shè)置了兩級(jí)分類,第一級(jí)分類為大綱,第二級(jí)分類為次綱,第二級(jí)分類與第一季分類過(guò)掛鉤。宜家燈具一級(jí)分類模塊:宜家燈具商城管理員點(diǎn)擊左側(cè)的一級(jí)分類管理,管理員可以在該頁(yè)面中可以添加分類,編輯分類,查看分類,刪除分類,因?yàn)槎?jí)分類的外鍵是一級(jí)分類的id,所以,綁定了二級(jí)分類的一級(jí)分類不能刪除。一級(jí)分類模塊的圖片如圖5-4所示:圖5-4一級(jí)分類List圖一級(jí)分類核心代碼圖如下:@RequestMapping("/admin/admin_SelectAllCategory")//映射路徑publicList<Category>SelectAllCategory(){//查看一級(jí)分類 Categorycategory=newCategory(); List<Category>list=categoryMapper.selectByExample(category); if(list!=null&&list.size()>0){//提高代碼健壯性 returnlist; } returnnull; }宜家燈具二級(jí)分類模塊:標(biāo)題5.1.3時(shí)提到過(guò)二級(jí)分類與一級(jí)分類做掛鉤,管理員點(diǎn)擊二級(jí)分類模塊時(shí),管理員可以在該頁(yè)面中可以添加分類,編輯分類,查看分類,修改二級(jí)分類所屬于的一級(jí)分類。二級(jí)分類模塊的圖片如圖5-5所示:圖5-5二級(jí)分類的效果圖二級(jí)分類模塊的核心代碼如下:List<Categorysecond>list=categorysecondMapper.selectAll(categorysecond);//查詢pageBean.setList(list);//分頁(yè)5.1.4后臺(tái)管理商品信息后臺(tái)管理商品信息模塊是指管理員可以在該模塊進(jìn)行對(duì)產(chǎn)品的編輯,可以查看燈具,新增燈具,修改燈具,刪除燈具等功能。實(shí)現(xiàn)重點(diǎn):在該模塊中,讀寫(xiě)圖片是重點(diǎn),燈具一般字段都能普通的方法錄入,但產(chǎn)品的照片回顯時(shí),需要用到io流,要實(shí)現(xiàn)圖片的上傳功能,需要把jsp上表單的傳輸方式改為post,然后添加enctype="multipart/form-data"這個(gè)屬性,意味著它有的屬性是以二進(jìn)制進(jìn)行傳輸。寫(xiě)io的時(shí)候,圖片保存路徑為服務(wù)器下的image文件夾上,但存入數(shù)據(jù)庫(kù)的是相對(duì)路徑,當(dāng)回顯頁(yè)面時(shí),用jsp中${pageContext.request.contextPath}中的語(yǔ)句拼接上從后臺(tái)傳輸過(guò)去的請(qǐng)求域中的字段,就可以拼接成完整的路徑。在使用img標(biāo)簽中的href屬性,圖片就可以回顯了,另外燈具添加需要跟二級(jí)分類做掛鉤,必須連接其二級(jí)表,連接字段為csid。燈具管理功能實(shí)現(xiàn)效果圖如圖5-6:圖5-6燈具管理實(shí)現(xiàn)效果圖實(shí)現(xiàn)燈具管理模塊的核心代碼分兩段:(1)整體燈具管理模塊核心:PageBean<Product>productList=productService.SelectAllProduct(page); model.addAttribute("productList",ProductList); return"admin/product/list";(2)圖片io流核心代碼(新增圖片,修改圖片):if(file!=null){//傳統(tǒng)讀寫(xiě) Stringpath=request.getServletContext().getRealPath( "/products"); StringuploadFileName=file.getOriginalFilename(); StringfileName=UUIDUtiils.getUUID()+uploadFileName; FilediskFile=newFile(path+"http://"+fileName); file.transferTo(diskFile); product.setImage("products/"+fileName); }5.1.5后臺(tái)管理訂單模塊后臺(tái)管理訂單模塊是指商城管理員在點(diǎn)擊管理頁(yè)面的所有訂單中可以看到全部訂單,可以獲取所有訂單的信息,如收貨人,發(fā)送的物件,收貨地址等等,也可以看到哪些用戶未結(jié)賬,哪些用戶未收貨功能實(shí)現(xiàn)描述:訂單會(huì)有4種狀態(tài),其中后臺(tái)管理員能看到4中狀態(tài),前臺(tái)使用者能看到2中狀態(tài),在后臺(tái)管理平臺(tái)中,從生成的訂單存入數(shù)據(jù)庫(kù)后,回顯的頁(yè)面分為4個(gè),把訂單實(shí)體放入到Session中,根據(jù)不同訂單屬性不同進(jìn)行回顯,后臺(tái)管理平臺(tái)中,在list中根據(jù)下拉框select選擇下個(gè)狀態(tài)的值,把這個(gè)值傳到SetState方法中,為了讓業(yè)務(wù)更精準(zhǔn),規(guī)定了管理員只能進(jìn)行本次操作的下次狀態(tài),用這個(gè)在前端頁(yè)面用了Cgtib中<c:if>做了判斷,其中,訂單表跟商品表跟用戶表呈多對(duì)多的關(guān)系,訂單表跟商品表的中間表為訂單詳表,訂單表跟用戶表的中間表為訂單用戶表,當(dāng)用戶點(diǎn)擊結(jié)賬時(shí),訂單會(huì)把該用戶放至在Session中的購(gòu)物車對(duì)象,把購(gòu)物車對(duì)象放進(jìn)Map<Order>中,在foreach算出該用戶的總賬戶total,從而生成一個(gè)訂單對(duì)象。宜家燈具訂單管理模塊實(shí)現(xiàn)效果圖如圖5-7所示:圖5-7訂單模塊效果圖實(shí)現(xiàn)核心代碼如下:PageBean<Orders>ordersList=orderService.selectAllOrders(page); model.addAttribute("ordersList",ordersList); return"admin/order/list";5.1.6后臺(tái)管理發(fā)貨功能當(dāng)管理員點(diǎn)擊訂單中消費(fèi)品未發(fā)貨頁(yè)面時(shí),管理員根據(jù)收到用戶的付款信息時(shí),管理員只需要點(diǎn)下發(fā)貨,就可以根據(jù)用戶設(shè)定的收貨人,收貨電話號(hào)碼,收貨地點(diǎn)進(jìn)行發(fā)貨。實(shí)現(xiàn)發(fā)貨效果圖如5-8所示:圖5-8發(fā)貨功能效果圖核心代碼實(shí)現(xiàn)如下:orderService.updateOrderStatus(oid,3);//更新?tīng)顟B(tài)為3 return"redirect:myOrder.action?page=1";5.1.7后臺(tái)留言管理模塊留言管理模塊是管理員可以查看所有用戶發(fā)送的留言,根據(jù)留言掌控輿論,為了防止惡意誹謗攻擊宜家商城,用戶可以查看留言,也可以刪除留言。留言管理頁(yè)面效果圖如圖5-9所示:圖5-9留言管理效果圖留言管理系統(tǒng)實(shí)現(xiàn)核心代碼如下:PageBean<Message>messageList=messageService.SelectAllMessage(message);model.addAttribute("MessageList",messageList);return"messageList";5.2商城前臺(tái)功能模塊5.2.1商城首頁(yè)的實(shí)現(xiàn)當(dāng)用戶進(jìn)入宜家商城時(shí),會(huì)自動(dòng)跳轉(zhuǎn)到首頁(yè),在首頁(yè),可以看到宜家商城的主頁(yè)概況,比如用戶可以看到燈具的一級(jí)分類,燈具的二級(jí)分類,一部分燈具,用戶可以在搜索欄搜索想要的燈具,但是用戶需要購(gòu)買(mǎi)時(shí)要進(jìn)行登錄操作才可以,登錄在右上角,如果沒(méi)有賬號(hào)可以選擇注冊(cè)按鈕,注冊(cè)好以后就可以進(jìn)行登錄了。主頁(yè)效果圖如圖5-10所示:圖5-10宜家商城首頁(yè)效果圖實(shí)現(xiàn)代碼核心部分分三塊:導(dǎo)航欄一級(jí)分類顯示在主頁(yè)核心代碼:ArrayList<Category>categoryList=categoryService.getCategoryList(); request.getSession().getServletContext().setAttribute("categoryList",categoryList);左側(cè)二級(jí)分類顯示在主頁(yè)核心代碼:request.getSession().getServletContext().setAttribute("secondCategory",(ArrayList<SecondCategory>)secondCategoryService.getSecondCategory());商品展示在主頁(yè)核心代碼:ArrayList<Product>products=productService.showProduct(product); model.addAttribute("products",products);5.2.2用戶注冊(cè)功能實(shí)現(xiàn)當(dāng)宜家用戶點(diǎn)擊用戶注冊(cè)的按鈕以后,填入相應(yīng)信息,當(dāng)輸入用戶名時(shí),通過(guò)異步校驗(yàn),當(dāng)前用戶名如果已經(jīng)被注冊(cè),會(huì)被提示當(dāng)前的用戶名無(wú)法注冊(cè),當(dāng)所有校驗(yàn)成功以后,則把數(shù)據(jù)錄入到數(shù)據(jù)庫(kù)中,用戶可以在前臺(tái)進(jìn)行登錄。如圖5-11所示:圖5-11用戶注冊(cè)實(shí)現(xiàn)圖用戶注冊(cè)的核心代碼如下: @RequestMapping("/userRegist")//用戶注冊(cè)時(shí)發(fā)送的請(qǐng)求 publicStringuserRegist(Modelmodel,HttpServletRequestrequest, @ValidatedUseruser,BindingResultbindingResult, @RequestParamStringcheckImg)throwsException{ if(bindingResult.hasErrors()){//注入的參數(shù)全部一起校驗(yàn),只要有一個(gè)錯(cuò)//誤就會(huì)getError List<ObjectError>errors=bindingResult.getAllErrors(); List<String>list=newArrayList<>(); for(ObjectErrorobjectError:errors){ list.add(str); } model.addAttribute("errors",list); return"regist"; }

5.2.3用戶登錄功能實(shí)現(xiàn)當(dāng)用戶需要使用到留言功能,購(gòu)物功能燈功能時(shí),需要進(jìn)行登錄操作,點(diǎn)擊登錄按鈕,進(jìn)入登錄頁(yè)面,輸入相應(yīng)的賬號(hào)密碼就可以了。設(shè)計(jì)思路:當(dāng)用戶跳轉(zhuǎn)到登錄頁(yè)面時(shí),輸入用戶名時(shí),當(dāng)鼠標(biāo)移開(kāi)文本框,會(huì)觸發(fā)blur()事件,此時(shí),有一個(gè)交互事件進(jìn)行了異步校驗(yàn),ajax發(fā)送的請(qǐng)求到后臺(tái)會(huì)訪問(wèn)數(shù)據(jù)庫(kù)有沒(méi)有這個(gè)用戶名,如果沒(méi)有則提示用戶名不存在,反之提示可以成功,后續(xù)進(jìn)行賬號(hào)密碼校驗(yàn)以及驗(yàn)證碼校驗(yàn),驗(yàn)證碼是一個(gè)獨(dú)立的模塊,直接調(diào)用方法就可以了,當(dāng)所有操作校驗(yàn)成功以后,把宜家用戶用戶名以及用戶id存放在Session中。登錄實(shí)現(xiàn)圖片,登錄成功后的圖片如圖5-12,圖5-13以及代碼如下:圖5-12用戶登錄頁(yè)面圖5-13用戶登錄成功后用戶登錄頁(yè)面實(shí)現(xiàn)代碼如下:if(!sessionCode.equalsIgnoreCase(checkImg)){ request.getSession().setAttribute("message","請(qǐng)仔細(xì)看驗(yàn)證碼"); return"redirect:login.action"; } Useruser=userService.userLogin(user.getUsername(), user.getPassword()); if(user==null){ request.getSession().setAttribute("message","密碼錯(cuò)誤請(qǐng)重新輸入"); return"redirect:login.action"; }5.2.4用戶留言功能實(shí)現(xiàn)當(dāng)用戶登錄以后,點(diǎn)擊查看留言,可以看到所有用戶發(fā)送給商城的留言,看看用戶對(duì)商城是喜愛(ài)還是討厭,用戶也可以把自己的觀點(diǎn)放在商城上,只要不要太過(guò)分,管理員一般都不會(huì)去刪除,如果用戶太過(guò)分,可能面臨會(huì)員賬號(hào)被移除。留言功能實(shí)現(xiàn)效果圖如圖5-14所示:圖5-14商城前臺(tái)留言功能實(shí)現(xiàn)圖商城前臺(tái)留言功能核心代碼如下:ms.setMessage(messageinfo); ms.setUserid(loginUser.getUserid()); messageService.addMessage(ms); request.getSession().setAttribute("ms",ms); return"redirect:/messageshow.action?";5.2.5商品展示功能實(shí)現(xiàn)當(dāng)用戶登錄以后,點(diǎn)擊某個(gè)商品,會(huì)彈到該商品的詳情頁(yè)面,會(huì)獲得商品是不是火熱裝填,商品具體描述信息,商品的價(jià)錢(qián)都會(huì)獲取,還可以點(diǎn)擊按鈕把商品放入購(gòu)物車中,產(chǎn)品信息詳情如圖5-15所示:圖5-15產(chǎn)品信息詳情實(shí)現(xiàn)圖信息詳情實(shí)現(xiàn)核心代碼如下:Productproduct=prodcutService.selectProductByPid(pid); model.addAttribute("product",product);5.2.6用戶購(gòu)物車功能購(gòu)物車指的是用戶登錄后,點(diǎn)擊商品詳情,把想要的商品放入一個(gè)臨時(shí)儲(chǔ)物箱,這個(gè)儲(chǔ)物箱可以計(jì)算它的總價(jià),生成的訂單總價(jià)也是依據(jù)購(gòu)物車的總價(jià)來(lái)計(jì)算。設(shè)計(jì)思路:用戶商城購(gòu)物車是前臺(tái)用戶模塊最重要也是實(shí)現(xiàn)的難點(diǎn),因?yàn)樗婕暗竭B接表的數(shù)目很多,一共用了五個(gè)表,購(gòu)物車實(shí)體需要插入用戶id,商品id,二級(jí)分類id,因?yàn)橛脩舯仨毜卿洸拍苁褂酶墓δ?,所以用戶id可以直接從Seession中獲取,用戶未購(gòu)買(mǎi)任何東西,本人設(shè)置了一個(gè)Map<Shopcar>,存放了用戶id,其他屬性設(shè)置為NULL。當(dāng)用戶點(diǎn)擊商品購(gòu)買(mǎi)后,會(huì)把商品id存入到購(gòu)物車中,選擇數(shù)量,此時(shí)前臺(tái)頁(yè)面用了Ajax異步計(jì)算,此時(shí)會(huì)請(qǐng)求一個(gè)CountMoney的Mapping,它會(huì)通過(guò)這個(gè)pid查詢到宜家價(jià)格,再計(jì)算剛剛所得的Count,再把所得結(jié)果通過(guò)InnerHtml()方法插回到文本框中,最后購(gòu)物車信息添加到Map,存入到Session域,用戶結(jié)賬后,生成訂單。實(shí)現(xiàn)的圖片效果如圖5-16:

圖5-16購(gòu)物車存儲(chǔ)效果圖購(gòu)物車存儲(chǔ)計(jì)算實(shí)現(xiàn)核心代碼如下:Cartcart=getCart(request); cart.addCart(cartItem); return"cart";5.2.7用戶支付功能實(shí)現(xiàn)當(dāng)用戶選購(gòu)?fù)晟唐泛?,?huì)生成訂單,當(dāng)訂單結(jié)算完價(jià)錢(qián)以后,用戶需要填寫(xiě)收貨人,收貨地址,電話號(hào)碼或者微信號(hào),然后點(diǎn)擊付款結(jié)賬,否則商家不會(huì)發(fā)貨,支付功能效果圖如5-17所示:圖5-17用戶支付功能實(shí)現(xiàn)圖實(shí)現(xiàn)的核心代碼如下:orderService.payMoney(order); return"redirect:UserOrder.action";5.2.8用戶確認(rèn)收貨功能當(dāng)用戶登陸后,點(diǎn)擊訂單,發(fā)現(xiàn)訂單賣家已經(jīng)發(fā)貨,用戶自身也收到了燈具,此時(shí)誠(chéng)實(shí)友好的用戶需要確認(rèn)收貨,否則會(huì)被賣家追究刑事責(zé)任,點(diǎn)擊以后,管理員收到通知,訂單業(yè)務(wù)鏈完成。查看訂單功能以及確認(rèn)收獲功能如圖5-18以及5-19:圖5-18查看訂單實(shí)現(xiàn)圖圖5-19確認(rèn)收貨訂單完成效果圖實(shí)現(xiàn)確認(rèn)收貨核心代碼如下:orderService.updateOrderStatus(oid,3); return"redirect:UserOrder.action";

第6章系統(tǒng)測(cè)試6.1測(cè)試目的因?yàn)閷?xiě)出來(lái)的程序難免有bug,測(cè)試的目的在于檢測(cè)系統(tǒng)中的bug,測(cè)試是為了產(chǎn)品能安全在線上運(yùn)行,測(cè)試是為了更好的生產(chǎn),良好的測(cè)試結(jié)果注定有良好的線上產(chǎn)品,高壓測(cè)試甚至還可以測(cè)試商城的抗壓能力,處理并發(fā)的能力。測(cè)試不僅僅只是一個(gè)過(guò)程,它更是一個(gè)開(kāi)發(fā)檢驗(yàn)成果的重大體現(xiàn)。6.2測(cè)試方法分前臺(tái)宜家用戶模塊測(cè)試以及后臺(tái)商城管理人員模塊測(cè)試,采用黑盒測(cè)試。6.3測(cè)試用例6.3.1管理員模塊測(cè)試根據(jù)管理員模塊需求分析進(jìn)行測(cè)試,測(cè)試用例如表6-1所示:表6-1管理員模塊測(cè)試用例序號(hào)測(cè)試功能輸入輸出結(jié)果1查看用戶信息選擇查看用戶信息輸出用戶信息通過(guò)2一級(jí)分類管理對(duì)一級(jí)分類進(jìn)行增刪改查新增成功,編輯成功。刪除成功通過(guò)3二級(jí)分類管理對(duì)二級(jí)分類進(jìn)行增刪改查新增成功,編輯成功。刪除成功通過(guò)4商品管理對(duì)商品進(jìn)行增刪改查新增成功,編輯成功。刪除成功通過(guò)5訂單管理對(duì)每個(gè)訂單狀態(tài)進(jìn)行查詢訂單顯示狀態(tài)通過(guò)6.3.2前臺(tái)用戶模塊測(cè)試根據(jù)前臺(tái)用戶需求分析進(jìn)行測(cè)試,測(cè)試用例如表6-2所示:表6-2前臺(tái)用戶測(cè)試用例序號(hào)測(cè)試功能輸入輸出結(jié)果1用戶注冊(cè)賬號(hào):userBuffer1密碼:edit123輸出注冊(cè)成功通過(guò)2查看一級(jí)分類在導(dǎo)航欄查找一級(jí)分類一級(jí)分類渲染在導(dǎo)航欄上通過(guò)3查找二級(jí)分類點(diǎn)擊一級(jí)分類后查看二級(jí)分類二級(jí)分類通過(guò)4查看商品進(jìn)入主頁(yè)可以看到商品通過(guò)5查看商品詳情點(diǎn)進(jìn)商品詳情商品詳情成功顯示通過(guò)6生成購(gòu)物車點(diǎn)擊商品加入購(gòu)物車生成購(gòu)物車成功通過(guò)7結(jié)賬把購(gòu)物車的訂單項(xiàng)結(jié)賬結(jié)賬成功通過(guò)8查看訂單查看用戶訂單查看成功過(guò)通過(guò)9輸入留言輸入留言信息:燈具好貴成功輸入,并顯示通過(guò)10確認(rèn)收貨點(diǎn)擊確認(rèn)收貨訂單完成通過(guò)11支付點(diǎn)擊付款進(jìn)入發(fā)貨狀態(tài)通過(guò)12商城主頁(yè)進(jìn)入商城主頁(yè)商城信息展示成功通過(guò)

第7章結(jié)束語(yǔ)7.1全文總結(jié)基于SSM的宜家燈具商城的設(shè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論