版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
中北大學(xué)信息商務(wù)學(xué)院2015屆畢業(yè)設(shè)計(jì)說(shuō)明書(shū)畢業(yè)設(shè)計(jì)說(shuō)明書(shū)網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)題目用一號(hào)黑體字,一行排不下可排兩行,居中。11060641X0811060641X08康云麗康云麗信息商務(wù)學(xué)院信息商務(wù)學(xué)院學(xué)生姓名:11060641X0811060641X08康云麗康云麗信息商務(wù)學(xué)院信息商務(wù)學(xué)院電子與計(jì)算機(jī)科學(xué)技術(shù)系電子與計(jì)算機(jī)科學(xué)技術(shù)系學(xué)院:電子與計(jì)算機(jī)科學(xué)技術(shù)系電子與計(jì)算機(jī)科學(xué)技術(shù)系網(wǎng)絡(luò)工程計(jì)算機(jī)科學(xué)與技術(shù)系名:網(wǎng)絡(luò)工程計(jì)算機(jī)科學(xué)與技術(shù)甄磊楊喜旺甄磊專甄磊楊喜旺甄磊指導(dǎo)教師:2015年5月網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要一直以來(lái)我國(guó)的經(jīng)濟(jì)、科技都在不斷的發(fā)展,人們的生活水平也都不斷的提高。人們的生活消費(fèi)方式也在不斷的變化著。拿購(gòu)物來(lái)說(shuō),現(xiàn)代的人們也都追趕時(shí)髦開(kāi)始了網(wǎng)購(gòu)。網(wǎng)絡(luò)商家的競(jìng)爭(zhēng)也是如火如荼的進(jìn)行著。本設(shè)計(jì)根據(jù)現(xiàn)有的網(wǎng)上購(gòu)物現(xiàn)狀而設(shè)計(jì)開(kāi)發(fā)的網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。通過(guò)這個(gè)系統(tǒng)不但可以擴(kuò)大商家的規(guī)模和市場(chǎng)影響力,同時(shí)可以減少企業(yè)的經(jīng)營(yíng)成本,提高工作效率,也方便了消費(fèi)者購(gòu)物?,F(xiàn)代化的網(wǎng)購(gòu)形式和以往傳統(tǒng)的購(gòu)物方式相比具有極其強(qiáng)大的優(yōu)勢(shì)。由于電腦的普及,家家戶戶都有了電腦可以上網(wǎng),這就使得網(wǎng)上購(gòu)物在人們的生活中傳播的更快了,越來(lái)越多的人喜歡甚至習(xí)慣了網(wǎng)上購(gòu)物所帶來(lái)的方便性、快捷性,在節(jié)省時(shí)間的同時(shí)也可以貨比三家,比比質(zhì)量、比比價(jià)格,買到更放心更便宜的商品。網(wǎng)上購(gòu)物不僅方便了廣大用戶,同時(shí)也可以大大提高了商家商品的交易效率,為商家節(jié)省了不必要的人員開(kāi)支,節(jié)省了時(shí)間,同時(shí)還可以通過(guò)網(wǎng)站留言和買家用戶溝通,達(dá)到更好的服務(wù)效果。所以,此系統(tǒng)開(kāi)發(fā)后必將會(huì)受到越來(lái)越多用戶及商家的好評(píng),將會(huì)有越來(lái)越多的商家應(yīng)用此系統(tǒng),系統(tǒng)必將獲得迅速的發(fā)展,具有實(shí)際意義。本文以網(wǎng)上商城為例,闡述網(wǎng)上商城系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)。系統(tǒng)采用java為開(kāi)發(fā)語(yǔ)言,Jsp作為前臺(tái)的頁(yè)面顯示,以mysql作為數(shù)據(jù)庫(kù),MyEclipse為開(kāi)發(fā)工具。系統(tǒng)頁(yè)面友好,簡(jiǎn)潔大方,通俗易懂,無(wú)論是用戶還是商家都比較容易上手操作。關(guān)鍵詞:網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),java,MyEclipse中北大學(xué)信息商務(wù)學(xué)院2015屆畢業(yè)設(shè)計(jì)說(shuō)明書(shū)DesignandimplementationofonlineshoppingsystemAbstractSinceChina'seconomy,scienceandtechnologyintheunceasingdevelopment,people'slivingstandardisimprovingconstantly.People'sconsumptionpatternsareconstantlychanging.Takeshopping;modernpeoplearecatchingupwiththeJonesesstartedonlineshopping.Thenetworkbusinesscompetitionislikearagingfireof.ThisdesignaccordingtothepresentsituationofonlineshoppingandonlinestoresystembasedonJAVAdevelopment.Throughthissystemcannotonlyexpandthebusinessscaleandmarketinfluence,andcanreducetheoperatingcostsofenterprises,improveworkefficiency,butalsoconvenientforshopping.Themodernformofonlineshoppingandtraditionalshoppingwayhasextremelystrongadvantage.Asthepopularityofcomputer,eachandeveryfamilyhasacomputer,cantheInternet,fasterwhichmakesonlineshoppingspreadinpeople'slife,moreandmorepeoplelikeevenusedconvenient,fastonlineshoppingbrings,savingintimealsocangoodsthanthree,thanquality,thanprice,buymoreatthecheapergoods.Onlineshoppingisnotonlyconvenientforusers,butalsocangreatlyimprovetheefficiencyofbusinesstransactions,saveunnecessarypersonnelcostsforbusinesses,savingtime,alsocanbethroughthewebsitemessageandbuyerstousercommunication,toachievebetterserviceeffect.Therefore,thissystemwillbemoreandmoreusersandmerchantsofpraise,therewillbemoreandmoreapplicationbusinessofthissystem,andsystemwillgetrapiddevelopment,practicalsignificance.SinceChina'sentryintotheWTO,moreandmoretraditionalenterprisestofurtherrecognizetheinevitabletrendofeconomicdevelopmentoftheenterpriseisbasedonnetwork,globalizationasthemaincharacteristic.Ande-commerceenterpriseshavebecomeanecessaryconditionforenterprisedevelopmentinlinewithinternationalstandards.Overtheyears,thestateattachesgreatimportancetotheinformationconstructionofenterprises,andhasdonealotofwork,butatpresenttheenterprisebegantoimplementtheinformationshareislessthan20%.Sothecosmeticssalessystemisaveryurgentdemand.Inthispaper,onlinestoresalesforexample,describethedevelopmentanddesignofonlineshopsalessystem.SystemusesJavaasthedevelopmentlanguage,Jspasafrontpagedisplay,toMySQLasadatabaseandMyEclipseasthedevelopmenttool.Thesystempagefriendly,simpleandgenerous,easytounderstand,eithertheuserorthebusinessesarerelativelyeasytouseinoperation.Keywords:Designandimplementationofonlineshoppingsystem,java,MyEclipse 第Ⅰ頁(yè)共Ⅱ頁(yè)目錄1緒論 11.1課題背景 11.2目的與意義 11.3課題研究主要內(nèi)容 21.3.1管理員功能 21.3.2用戶功能 21.4國(guó)內(nèi)外現(xiàn)狀 22需求分析 32.1業(yè)務(wù)流程分析 32.2功能需求分析 32.3數(shù)據(jù)需求分析 42.4數(shù)據(jù)字典分析 52.5系統(tǒng)E-R圖 72.6關(guān)鍵技術(shù)介紹 112.6.1java技術(shù)介紹 112.6.2tomcat介紹 132.6.3mysql簡(jiǎn)介 133系統(tǒng)設(shè)計(jì) 153.1系統(tǒng)概要設(shè)計(jì) 153.1.1系統(tǒng)結(jié)構(gòu)圖 153.1.2功能層次圖 153.2功能模塊設(shè)計(jì) 153.2.1購(gòu)物車功能模塊設(shè)計(jì) 153.2.2管理員添加商品模塊設(shè)計(jì) 163.3頁(yè)面設(shè)計(jì) 173.3.1后臺(tái)頁(yè)面設(shè)計(jì) 173.3.2前臺(tái)頁(yè)面設(shè)計(jì) 18第Ⅱ頁(yè)共Ⅱ頁(yè)4系統(tǒng)實(shí)現(xiàn) 194.1數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn) 194.2功能模塊實(shí)現(xiàn) 194.2.1用戶注冊(cè)功能模塊實(shí)現(xiàn) 194.2.2商品查看模塊實(shí)現(xiàn) 214.3頁(yè)面實(shí)現(xiàn) 234.3.1用戶登錄頁(yè)面實(shí)現(xiàn) 234.3.2購(gòu)物車頁(yè)面實(shí)現(xiàn) 244.3.3查看訂單頁(yè)面實(shí)現(xiàn) 264.3.4留言板頁(yè)面實(shí)現(xiàn) 284.3.5修改個(gè)人信息頁(yè)面實(shí)現(xiàn) 304.3.6商品管理頁(yè)面實(shí)現(xiàn) 314.3.7后臺(tái)訂單處理實(shí)現(xiàn) 335系統(tǒng)測(cè)試 365.1測(cè)試原理 365.2測(cè)試結(jié)果分析 366結(jié)論 37參考文獻(xiàn) 38致謝 39第36頁(yè)共39頁(yè)1緒論1.1課題背景目前,網(wǎng)絡(luò)正以一種前所未有的沖擊力在影響著人類的活動(dòng),包括人類的生產(chǎn)和日常生活。網(wǎng)絡(luò)的誕生和發(fā)展,顛覆了傳統(tǒng)的信息傳播方式,沖破了存在于傳統(tǒng)交流方式中時(shí)間和空間的種種壁壘,極大地改變了人類從物質(zhì)到精神、從形式到內(nèi)容、從生產(chǎn)到生活的各種活動(dòng),并且給人類帶來(lái)了新的機(jī)遇和挑戰(zhàn)?;ヂ?lián)網(wǎng)已日益成為收集提供信息的最佳渠道并逐步進(jìn)入傳統(tǒng)的流通領(lǐng)域。于是電子商務(wù)開(kāi)始流行起來(lái),越來(lái)越多的商家在網(wǎng)上建起在線商店,向消費(fèi)者展示出一種新穎的購(gòu)物理念。網(wǎng)絡(luò)的快速發(fā)展為網(wǎng)上商城的迅速發(fā)展提供了強(qiáng)大的推動(dòng)力,同時(shí),由于國(guó)家的重視,網(wǎng)上購(gòu)物的環(huán)境也已經(jīng)逐步得到了改善,相對(duì)于安全,以及市場(chǎng)運(yùn)作的規(guī)范和相應(yīng)政策法規(guī)的完善。網(wǎng)上購(gòu)物對(duì)網(wǎng)民的吸引力將會(huì)越來(lái)越大,人們足不出戶就可以買到自己心儀的商品,而且網(wǎng)上的價(jià)格都是比實(shí)際價(jià)格便宜的,很受網(wǎng)民的喜愛(ài)。隨著我國(guó)網(wǎng)購(gòu)事業(yè)的發(fā)展,人們對(duì)購(gòu)物網(wǎng)站的看法也變得越來(lái)越接受了。人們從懷疑到信任,不了解到十分了解,從否定到肯定,從拒絕到欣然接受,使得網(wǎng)上購(gòu)物的觀念將更加深入人心。本系統(tǒng)是網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),開(kāi)發(fā)前我調(diào)查研究了很多網(wǎng)上商城的網(wǎng)站,總結(jié)了很多優(yōu)點(diǎn)與缺點(diǎn),在充分研究的基礎(chǔ)上開(kāi)發(fā)的本系統(tǒng)。希望本系統(tǒng)開(kāi)發(fā)后會(huì)帶給人們更多的方便,得到更多的人的認(rèn)可。1.2目的與意義網(wǎng)絡(luò)購(gòu)物是未來(lái)購(gòu)物發(fā)展的必然。針對(duì)此種情況,我們需要設(shè)計(jì)開(kāi)發(fā)出功能強(qiáng)大,費(fèi)用低廉,通用性強(qiáng),適合我國(guó)國(guó)情的購(gòu)物網(wǎng)站系統(tǒng)是很有必要的,這是本系統(tǒng)開(kāi)發(fā)的目的。有了這個(gè)系統(tǒng)可以為企業(yè)提供營(yíng)銷的解決方案,是為企業(yè)量身定制購(gòu)物管理系統(tǒng),提供第三方的銷售平臺(tái),幫助企業(yè)進(jìn)行信息處理和軟硬件的日常維護(hù)。這類服務(wù)商在行業(yè)上與享用服務(wù)者沒(méi)有競(jìng)爭(zhēng)關(guān)系和業(yè)務(wù)沖突。除了免去了開(kāi)發(fā)研究所耗費(fèi)的時(shí)間和支出,在短時(shí)間內(nèi)即可享受電子商務(wù)給企業(yè)發(fā)展帶來(lái)的收益以外,零售企業(yè)不必再為大筆的人力、財(cái)力、物力投入而傷腦筋,也不必為日后的軟硬件維護(hù)、升級(jí)而擔(dān)憂。租用這種第三方平臺(tái)無(wú)需高額的前期投入,在使用過(guò)程中,也只需定期交納一定的服務(wù)費(fèi)用。這樣開(kāi)展電子商務(wù),僅需企業(yè)很少的投入,就可以給企業(yè)帶來(lái)很大的收益,也是十分符合目前我國(guó)零售企業(yè)特點(diǎn)的。具有現(xiàn)實(shí)意義。1.3課題研究主要內(nèi)容本課題研究網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),網(wǎng)上商城系統(tǒng)從功能上劃分為會(huì)員和管理員兩種用戶。在系統(tǒng)實(shí)現(xiàn)上最重要的就是信息的交互,這點(diǎn)是由需求分析和可行性分析直接決定的,必須做好商品銷售的及時(shí)性,準(zhǔn)確性及真實(shí)性,并由管理員親自監(jiān)督和管理,及時(shí)對(duì)不按規(guī)則錄入的信息進(jìn)行及時(shí)的審查和刪除。1.3.1管理員功能網(wǎng)站的管理人員可以隨時(shí)的添加商品,及時(shí)添加商品的種類,可以隨意的修改商品價(jià)格,設(shè)置特價(jià)等,減少了不必要的人力投入、節(jié)約了開(kāi)支,提高了經(jīng)濟(jì)效益。后臺(tái)管理員主要實(shí)現(xiàn)對(duì)注冊(cè)用戶的管理、訂單的管理、商品的管理、留言管理、網(wǎng)站信息等管理。1.3.2用戶功能會(huì)員功能主要提供給系統(tǒng)的會(huì)員使用,包括會(huì)員的注冊(cè)、登錄,添加購(gòu)物車,查看訂單、留言等。1.4國(guó)內(nèi)外現(xiàn)狀與強(qiáng)勁的網(wǎng)絡(luò)購(gòu)物需求相比,我國(guó)受到計(jì)算機(jī)軟硬件基礎(chǔ)比較薄弱,技術(shù)水平比較低下,系統(tǒng)開(kāi)發(fā)人員十分緊缺等不利因素的影響,現(xiàn)有購(gòu)物網(wǎng)站系統(tǒng)普遍存在著功能比較單一,維護(hù)比較復(fù)雜,通用性又不強(qiáng)等問(wèn)題,有的購(gòu)物網(wǎng)站甚至直接采用靜態(tài)網(wǎng)頁(yè)發(fā)布商品信息。所有這些,已經(jīng)嚴(yán)重制約了我國(guó)電子商務(wù)的發(fā)展。在開(kāi)發(fā)過(guò)程中,我們應(yīng)該根據(jù)實(shí)際的需要來(lái)使用最合適的技術(shù),本系統(tǒng)則采用較新的Jsp技術(shù),一方面Jsp的安全性和跨平臺(tái)性比較好,另一方面,我也希望能從開(kāi)發(fā)該系統(tǒng)的過(guò)程中,深入學(xué)習(xí)一下這門編程語(yǔ)言。電子商務(wù)的出現(xiàn)和發(fā)展,商品流通領(lǐng)域?qū)⒚媾R全方位的深刻變革,美國(guó)等經(jīng)濟(jì)發(fā)達(dá)國(guó)家正在抓緊推進(jìn)的電子商務(wù)革命,將對(duì)中國(guó)商品流通領(lǐng)域和整個(gè)經(jīng)濟(jì)發(fā)展帶來(lái)種種影響,確實(shí)值得我們認(rèn)真研究。2需求分析在開(kāi)發(fā)系統(tǒng)前需求分析是十分重要的,只有詳細(xì)的進(jìn)行需求分析才能更好的了解所需開(kāi)發(fā)的內(nèi)容,才能更好的為客戶服務(wù)。需求分析的好壞直接影響著系統(tǒng)開(kāi)發(fā)的成敗,所以需求分析至關(guān)重要。2.1業(yè)務(wù)流程分析系統(tǒng)的活動(dòng)圖是可以明確的表達(dá)出系統(tǒng)工作的流程。系統(tǒng)的業(yè)務(wù)用例工作流程說(shuō)明了業(yè)務(wù)為向所服務(wù)的業(yè)務(wù)主角提供其所需的價(jià)值而必須完成的工作,如圖2.1所示:圖2.1系統(tǒng)的活動(dòng)圖2.2功能需求分析系統(tǒng)中詳細(xì)的用例圖如圖2.2,圖2.3所示:圖2.2用戶(會(huì)員)用例圖圖2.3管理員用例圖2.3數(shù)據(jù)需求分析在系統(tǒng)軟件開(kāi)發(fā)與設(shè)計(jì)過(guò)程中,概念設(shè)計(jì)作為整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵,主要任務(wù)是通過(guò)系統(tǒng)軟件需求分析所得到的資源,構(gòu)建一個(gè)不依賴于具體機(jī)器的概念模型。數(shù)據(jù)庫(kù)概念設(shè)計(jì)是對(duì)現(xiàn)實(shí)世界的概括與抽象,反映現(xiàn)實(shí)世界中事物與事物之間的聯(lián)系,并通過(guò)E-R關(guān)系圖進(jìn)行呈現(xiàn)。數(shù)據(jù)概念結(jié)構(gòu)模型-實(shí)體關(guān)系圖(E-R圖):描述數(shù)據(jù)對(duì)象及數(shù)據(jù)對(duì)象之間的關(guān)系,如圖2.4所示:圖2.4網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的ER圖2.4數(shù)據(jù)字典分析數(shù)據(jù)字典是對(duì)所有與系統(tǒng)相關(guān)的數(shù)據(jù)元素的一個(gè)有組織的列表和精確的、嚴(yán)格的定義,根據(jù)前面對(duì)網(wǎng)站各個(gè)權(quán)限用戶模塊的功能分析和對(duì)數(shù)據(jù)庫(kù)中實(shí)體關(guān)系的設(shè)計(jì),可以看到網(wǎng)站中所用到的數(shù)據(jù)信息基本包括:管理員、會(huì)員、商品、訂單等。本系統(tǒng)的主要數(shù)據(jù)字典如表2.1,表2.2,表2.3,表2.4,表2.5,表2.6,表2.7,表2.8,表2.9所示:表2.1數(shù)據(jù)字典管理員示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵AdminTypeint4管理員類型AdminNamechar12真實(shí)姓名LoginNamechar12帳號(hào)LoginPwdchar12密碼表2.2數(shù)據(jù)字典購(gòu)物車示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Memberint4會(huì)員idMoneydecimal9金額CartStatusint4購(gòu)物車狀態(tài)表2.3數(shù)據(jù)字典購(gòu)物車記錄示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Cartint4購(gòu)物車Merchandiseint4商品idNumberint4數(shù)量Pricedecimal8價(jià)格Moneydecimal9會(huì)員價(jià)表2.4數(shù)據(jù)字典商品類別示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵CateNamechar40商品類別CateDesctext0商品描述表2.5數(shù)據(jù)字典留言示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Memberint4會(huì)員Titlechar60留言標(biāo)題Contenttext0留言內(nèi)容LeaveDatedatetime0留言時(shí)間AnswerContenttext0回復(fù)內(nèi)容AnswerDatedatetime0回復(fù)日期表2.6數(shù)據(jù)字典會(huì)員示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Memberlevelint4會(huì)員級(jí)別LoginNamechar12登錄賬號(hào)LoginPwdchar12密碼MemberNamechar20真實(shí)姓名Phonechar15聯(lián)系電話Addressvarchar100聯(lián)系地址Zipchar10郵政編碼RegDatedatetime0注冊(cè)日期LastDatedatetime0最后登錄日期LoginTimesint4登錄次數(shù)EMailvarchar100電子郵箱表2.7數(shù)據(jù)字典會(huì)員等級(jí)示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵LevelNamechar20會(huì)員級(jí)別Favourableint4折扣額度表2.8數(shù)據(jù)字典商品示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Categoryint4類別idMerNamechar40商品名稱Pricedecimal8市場(chǎng)價(jià)SPricedecimal8特價(jià)MerModelchar40商品型號(hào)Picturevarchar100商品圖片MerDesctext0商品描述Manufacturerchar60生產(chǎn)廠家LeaveFactoryDatedatetime0出廠日期Specialint4有無(wú)特價(jià)表2.9數(shù)據(jù)字典訂單示例名稱數(shù)據(jù)類型長(zhǎng)度備注IDint4主鍵Memberint4會(huì)員Cartint4購(gòu)物車OrderNOchar20訂單編號(hào)OrderDatedatetime0下單日期OrderStatusint4訂單狀態(tài)2.5系統(tǒng)E-R圖針對(duì)本系統(tǒng)特點(diǎn),數(shù)據(jù)庫(kù)設(shè)計(jì)采用的各個(gè)組成部分的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)。(1)admin管理員實(shí)體圖,如圖2.5所示:圖2.5管理員實(shí)體圖(2)cart購(gòu)物車實(shí)體圖,如圖2.6所示:圖2.6購(gòu)物車實(shí)體圖(3)cartselectedme購(gòu)物車記錄實(shí)體圖,所圖2.7所示:圖2.7購(gòu)物車記錄實(shí)體圖(4)category商品類別實(shí)體圖,如圖2.8所示:圖2.8商品類別實(shí)體圖(5)leaveword留言實(shí)體圖,如圖2.9所示:圖2.9留言實(shí)體圖(6)member會(huì)員實(shí)體圖,如圖2.10所示:圖2.10會(huì)員實(shí)體圖(7)memberlevel會(huì)員等級(jí)實(shí)體圖,如圖2.11所示:圖2.11會(huì)員等級(jí)實(shí)體圖(8)merchandise商品實(shí)體圖,如圖2.12所示:圖2.12商品實(shí)體圖(9)orders訂單實(shí)體圖,如圖2.13所示:圖2.13訂單實(shí)體圖關(guān)鍵技術(shù)介紹2.6.1java技術(shù)介紹Java是一種簡(jiǎn)單的,面向?qū)ο蟮?,分布式的,解釋性的,健壯?安全的,結(jié)構(gòu)的中立的,可移植的,性能優(yōu)異的,多線程的,動(dòng)態(tài)的語(yǔ)言。它有以下特點(diǎn)[3]:1.平臺(tái)無(wú)關(guān)性平臺(tái)無(wú)關(guān)性是指Java能運(yùn)行于不同的平臺(tái)。Java引進(jìn)虛擬機(jī)概念,Java虛擬機(jī)(JavaVirtualMachine)是建立在硬件和操的作系統(tǒng)軟件之上,用于實(shí)現(xiàn)Java二進(jìn)制代碼的解釋執(zhí)行功能,為不同平臺(tái)提供統(tǒng)一的Java接口,這使得Java應(yīng)用程序可以跨平臺(tái)運(yùn)行,非常適合網(wǎng)絡(luò)應(yīng)用。2.安全性Java的編程類似C++,學(xué)習(xí)過(guò)C++的讀者將很快掌握J(rèn)ava的精髓。Java舍棄了C++的指針對(duì)存儲(chǔ)器地址的直接操作,程序運(yùn)行時(shí),內(nèi)存由操作系統(tǒng)軟件分配,這樣可以避的免病毒通過(guò)指針侵入系統(tǒng)軟件。Java對(duì)程序提供了安全管理器,防止程序的非法訪問(wèn)。3.面向?qū)ο驤ava吸取了C++面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類中,利用類的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡(jiǎn)潔性和便于維護(hù)性。類的封裝性、繼承性等有關(guān)對(duì)象的優(yōu)點(diǎn),使程序代碼只需一次編譯,然后通過(guò)上述優(yōu)點(diǎn)反復(fù)利用。程序員只需把主要精力用在類和接口的設(shè)計(jì)和應(yīng)用上。Java提供了眾多的對(duì)象類,通過(guò)繼承即可使用父類的方法。在Java中,類的繼承關(guān)系是單一的、非多重的,一個(gè)子類只有一個(gè)父類,子類的父類又有一個(gè)父類。Java提供的Object類及其子類的繼承關(guān)系如同一棵倒立的樹(shù)形,根類為Object類,Object類功能強(qiáng)大,經(jīng)常會(huì)使用到它及其它派生的子類。4.分布式Java建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺(tái)上。庫(kù)函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受資源的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣容易。5.鍵壯性Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤。類型檢查幫助檢查出許多開(kāi)發(fā)早期出現(xiàn)的錯(cuò)誤。Java自己操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。Java還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開(kāi)發(fā)Java應(yīng)用程序的周期。Java提供:Null指針檢測(cè)、數(shù)組邊界檢測(cè)、異常出口、Bytecode校驗(yàn)。2.6.2tomcat介紹Tomcat是一個(gè)輕量級(jí)應(yīng)用服務(wù)器,隨著java的流行,其在web上的應(yīng)用也越來(lái)越廣,tomcat作為一個(gè)開(kāi)源的Servlet容器,應(yīng)用前景越來(lái)越廣。Tomcat很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)軟件資源小,使用Tomcat可以體驗(yàn)JSP和Servlet的最新規(guī)范。經(jīng)過(guò)多年的發(fā)展,使得Tomcat不僅是JSP和Servlet規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),而且具備了很多商業(yè)JavaServlet容器的優(yōu)點(diǎn);而且它還在不斷的改進(jìn)和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。J2EE技術(shù)的基礎(chǔ)地方就是核心Java平臺(tái)或J2EE平臺(tái)的標(biāo)準(zhǔn)版,J2EE不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如“編寫(xiě)一次、隨處運(yùn)行”的優(yōu)點(diǎn)、方便存取數(shù)據(jù)庫(kù)的JDBCAPI、CORBA技術(shù)以及能夠在Internet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)還提供了對(duì)EJB(EnterpriseJavaBeans)、JavaServletAPI、JSP(JavaServerPages)以及XML技術(shù)的全面支持。其最終目的就是成為一個(gè)能夠使企業(yè)及個(gè)體開(kāi)發(fā)者大幅縮短投放挨個(gè)市場(chǎng)時(shí)間的體系結(jié)構(gòu)。J2EE體系結(jié)構(gòu)提供中間層集成框架用來(lái)滿足無(wú)需太多費(fèi)用而又需要高可用性、高可靠性以及可擴(kuò)展性的應(yīng)用需求。通過(guò)提供統(tǒng)一的開(kāi)發(fā)平臺(tái),J2EE降低了開(kāi)發(fā)多層應(yīng)用的費(fèi)用和復(fù)雜性,同時(shí)提供對(duì)現(xiàn)有應(yīng)用程序集成強(qiáng)有力支持,完全支持EnterpriseJavaBeans,有良好的向?qū)еС趾筒渴饝?yīng)用,添加目錄支持,增強(qiáng)了安全機(jī)制,提高了性能。Tomcat最初是由Sun的軟件構(gòu)架師詹姆斯·鄧肯·戴維森開(kāi)發(fā)的。后來(lái)他幫助將其變?yōu)殚_(kāi)源項(xiàng)目,并由Sun貢獻(xiàn)給Apache軟件基金會(huì)。由于大部分開(kāi)源項(xiàng)目O'Reilly都會(huì)出一本相關(guān)的書(shū),并且將其封面設(shè)計(jì)成某個(gè)動(dòng)物的素描,因此他希望將此項(xiàng)目以一個(gè)動(dòng)物的名字命名。因?yàn)樗M@種動(dòng)物放哪都能夠自己照顧自己,最終,他將其命名為Tomcat(英語(yǔ)公貓或其他雄性貓科動(dòng)物)。2.6.3mysql簡(jiǎn)介MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)軟件,由瑞典MySQLAB企業(yè)開(kāi)發(fā),目前屬于Oracle企業(yè)。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)就是將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。MySQL的SQL語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用是了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其就是開(kāi)放源碼這一特點(diǎn),一般網(wǎng)站的開(kāi)發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開(kāi)發(fā)環(huán)境。與其他的大型數(shù)據(jù)庫(kù)例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限(MySQLCluster的功能和效率都相對(duì)比較差)等,但是這絲毫也沒(méi)有減少它受歡迎的程度。對(duì)于一般的個(gè)體使用者和企業(yè)及個(gè)體來(lái)說(shuō),MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開(kāi)放源碼軟件,因此可以大大降低總體擁有成本。JDBC技術(shù):本平臺(tái)系統(tǒng)軟件采用JDBC技術(shù)才實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接,執(zhí)行數(shù)據(jù)庫(kù)操作,并結(jié)合JNDI的數(shù)據(jù)源對(duì)數(shù)據(jù)庫(kù)的連接進(jìn)行優(yōu)化。JDBC是JAVA提供的數(shù)據(jù)庫(kù)編程的API,方便Java程序操作的數(shù)據(jù)庫(kù)所提供的Java標(biāo)準(zhǔn)接口和類,通過(guò)此API,Java程序可以訪問(wèn)不同類型的數(shù)據(jù)庫(kù),并執(zhí)行建立數(shù)據(jù)庫(kù)連接、執(zhí)行數(shù)據(jù)庫(kù)的操作等。JDBC中,具有主要功能的類包括:1)DriverManager,用來(lái)產(chǎn)生Driver對(duì)象;2)Driver,對(duì)應(yīng)某一特定的數(shù)據(jù)庫(kù)驅(qū)動(dòng)的程序?qū)ο?,通過(guò)DriverManager.GetDriver(StringURL)獲得;3)Connection,數(shù)據(jù)庫(kù)的連接對(duì)象,通過(guò)DriverManager.GetConnection(StringURL)獲得;4)Statement,執(zhí)行的數(shù)據(jù)庫(kù)的操作SQL語(yǔ)句對(duì)象,主要包含Statement、PreparedStatement、CallableStatement,通過(guò)Connection實(shí)例獲得;5)Result,數(shù)據(jù)庫(kù)的操作返回的結(jié)果集合對(duì)象,通過(guò)對(duì)應(yīng)的Statement實(shí)例執(zhí)行execute()獲得。JDBC執(zhí)行步驟如下:1.加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序;2.通過(guò)DriverManager創(chuàng)建數(shù)據(jù)庫(kù)連接Connection;3.通過(guò)Connection執(zhí)行SQL語(yǔ)句;4.獲得執(zhí)行結(jié)果集ResultSet;5.對(duì)結(jié)果集進(jìn)行邏輯處理;6.關(guān)閉相應(yīng)的數(shù)據(jù)源及數(shù)據(jù)庫(kù)連接。3系統(tǒng)設(shè)計(jì)3.1系統(tǒng)概要設(shè)計(jì)系統(tǒng)軟件設(shè)計(jì)階段的主要任務(wù)是在需求分析的基礎(chǔ)上,確定系統(tǒng)軟件的模塊層次結(jié)構(gòu)、數(shù)據(jù)庫(kù)結(jié)構(gòu)和模塊的控制流程等,明確系統(tǒng)軟件該“如何做”。該階段要遵循易用性、業(yè)務(wù)完整性、業(yè)務(wù)規(guī)范化和擴(kuò)展性等設(shè)計(jì)原則[8]。3.1.1系統(tǒng)結(jié)構(gòu)圖系統(tǒng)的體系結(jié)構(gòu)圖是根據(jù)上述的分析如何共享系統(tǒng)數(shù)據(jù)、怎樣布局、如何交互等設(shè)計(jì)的,分層體系結(jié)構(gòu)圖如圖3.1所示:圖3.1某網(wǎng)站分層體系結(jié)構(gòu)圖3.1.2功能層次圖在一個(gè)系統(tǒng)中一定要有合理的功能模塊的劃分,這樣才能夠極大限度地減少不必要的重復(fù)勞動(dòng)、提高開(kāi)發(fā)人員的工作效率,同時(shí)在后期的使用中也可以增大系統(tǒng)的可維護(hù)性。系統(tǒng)的功能層次圖,如圖3.2所示:系統(tǒng)功能系統(tǒng)功能系統(tǒng)功能系統(tǒng)功能用戶用戶管理員管理員我的購(gòu)物車留言板查看訂單修改個(gè)人信息用戶注冊(cè)用戶登錄網(wǎng)站簡(jiǎn)介商品搜索特價(jià)商品管理特價(jià)商品管理會(huì)員管理會(huì)員訂單管理會(huì)員訂單管理管理員管理管理員登錄商品類別管理商品類別管理商品管理退出3.2功能模塊設(shè)計(jì)3.2.1購(gòu)物車功能模塊設(shè)計(jì)會(huì)員登錄系統(tǒng)后看到自己喜歡的商品可以添加購(gòu)物車,添加后也可以從購(gòu)物車刪除商品,然后繼續(xù)挑選商品;可以在購(gòu)物車中直接修改數(shù)量,還可以修改購(gòu)物車中某個(gè)商品的數(shù)量,統(tǒng)計(jì)商品總金額。如圖3.3所示:購(gòu)物車功能模塊購(gòu)物車功能模塊購(gòu)物車功能模塊繼續(xù)購(gòu)物繼續(xù)購(gòu)物確認(rèn)訂單信息確認(rèn)訂單信息刪除商品刪除商品清空購(gòu)物車清空購(gòu)物車修改訂購(gòu)數(shù)量修改訂購(gòu)數(shù)量提交訂單提交訂單圖3.3購(gòu)物車功能模塊圖圖3.3購(gòu)物車功能模塊圖添加購(gòu)物車添加購(gòu)物車3.2.2管理員添加商品模塊設(shè)計(jì)管理員可以在后臺(tái)添加商品,添加后可以修改或是刪除,添加商品流程圖如下圖3.4所示:添加商品添加商品添加商品提示:sorry,請(qǐng)輸入內(nèi)容提示:sorry,請(qǐng)輸入內(nèi)容添加添加成功成功失敗失敗提示:添加成功提示:添加成功圖3.4添加商品流程圖順序圖可以顯示多個(gè)對(duì)象之間的動(dòng)態(tài)協(xié)作,如圖3.5所示。圖3.5網(wǎng)上商城系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)順序圖3.3頁(yè)面設(shè)計(jì)3.3.1后臺(tái)頁(yè)面設(shè)計(jì)管理員在后臺(tái)管理商品信息、商品類別、特價(jià)商品管理、會(huì)員訂單管理、會(huì)員管理等,其具體的模塊結(jié)構(gòu)圖如下圖3.6所示:后臺(tái)管理后臺(tái)管理后臺(tái)管理接收后臺(tái)管理要求接收后臺(tái)管理要求根據(jù)后臺(tái)管理要求根據(jù)后臺(tái)管理要求類別管理管理類別管理管理商品管理商品管理留言管理留言管理會(huì)員訂單管理會(huì)員訂單管理會(huì)員管理會(huì)員管理管理員管理管理員管理圖3.6后臺(tái)總結(jié)構(gòu)圖3.3.2前臺(tái)頁(yè)面設(shè)計(jì)在系統(tǒng)前臺(tái)中用戶可以注冊(cè)、登錄、瀏覽搜索商品信息、查看商品類別、網(wǎng)站簡(jiǎn)介、添加購(gòu)物車、查看訂單、修改個(gè)人資料等,具體的前臺(tái)模塊結(jié)構(gòu)圖如圖3.7所示:前臺(tái)管理前臺(tái)管理前臺(tái)管理接收前臺(tái)管理要求接收前臺(tái)管理要求根據(jù)前臺(tái)管理要求根據(jù)前臺(tái)管理要求用戶注冊(cè)用戶注冊(cè)用戶登錄用戶登錄商品搜索商品搜索購(gòu)物車購(gòu)物車查看訂單管理查看訂單管理修改信息修改信息留言板留言板商品類別商品類別圖3.7前臺(tái)總體結(jié)構(gòu)圖4系統(tǒng)實(shí)現(xiàn)4.1數(shù)據(jù)庫(kù)連接的實(shí)現(xiàn)本系統(tǒng)軟件的開(kāi)發(fā)所使用的數(shù)據(jù)庫(kù)為MySQL。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng)軟件,關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就提高了速度并提高了靈活性。MySQL的SQL語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。功能模塊實(shí)現(xiàn)4.2.1用戶注冊(cè)功能模塊實(shí)現(xiàn)用戶必須先注冊(cè)成為本站的會(huì)員才可以在系統(tǒng)中預(yù)定商品、留言等操作,注冊(cè)時(shí)只要填寫(xiě)真實(shí)姓名、用戶名、密碼、聯(lián)系電話、地址、郵編等信息即可完成注冊(cè),具體實(shí)現(xiàn)頁(yè)面如圖4.1所示:圖4.1用戶注冊(cè)頁(yè)面其用戶注冊(cè)流程圖如下圖4.2所示:開(kāi)開(kāi)始開(kāi)始否否是是是是結(jié)束結(jié)束接收注冊(cè)信息接收注冊(cè)信息數(shù)據(jù)是否為空數(shù)據(jù)是否為空兩次密碼是否一致兩次密碼是否一致查詢數(shù)據(jù)庫(kù)查詢數(shù)據(jù)庫(kù)用戶名是否被占用用戶名是否被占用是是否否否否注冊(cè)成功注冊(cè)成功注冊(cè)失敗注冊(cè)失敗圖4.2用戶注冊(cè)流程圖代碼如下: //用戶注冊(cè)操作 /**新增注冊(cè)會(huì)員*/ publicbooleanaddMember(Membermember)throwsException{ Sessionsession=MySessionFactory.getSession(); Transactiontx=null; booleanresult=false; try{ tx=session.beginTransaction(); session.save(member); mit(); result=true; }catch(Exceptionex){ if(tx!=null)tx.rollback(); ("在執(zhí)行MemServiceImpl類中的addMember方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); }finally{ MySessionFactory.closeSession(); } returnresult; }4.2.2商品查看模塊實(shí)現(xiàn)用戶登錄后可以搜索并查看網(wǎng)站內(nèi)的所有商品的詳情,如商品名稱、圖片、市場(chǎng)價(jià)、是否特價(jià),并可以購(gòu)買等,具體如圖4.3所示:圖4.3查看商品頁(yè)面流程圖如圖4.4所示:開(kāi)開(kāi)始開(kāi)始結(jié)束結(jié)束接收查看信息接收查看信息數(shù)據(jù)是否為空數(shù)據(jù)是否為空是是數(shù)據(jù)插入數(shù)據(jù)庫(kù)數(shù)據(jù)插入數(shù)據(jù)庫(kù)否否查看是否成功查看是否成功是是否否查看商品失敗查看商品失敗查看成功查看成功圖4.4查看商品流程圖代碼如下://商品信息列表 /**瀏覽商品*/ publicListbrowseMer(Stringhql)throwsException{ Sessionsession=MySessionFactory.getSession(); Transactiontx=null; Listlist=null; try{ Queryquery=session.createQuery(hql); tx=session.beginTransaction(); list=query.list(); mit(); if(!Hibernate.isInitialized(list))Hibernate.initialize(list); }catch(Exceptionex){ if(tx!=null)tx.rollback(); ("在執(zhí)行MerServiceImpl類中的browseMer方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); }finally{ MySessionFactory.closeSession(); } returnlist; };頁(yè)面實(shí)現(xiàn)4.3.1用戶登錄頁(yè)面實(shí)現(xiàn)用戶登錄后才可以在系統(tǒng)中預(yù)定商品,留言信息,頁(yè)面如下圖4.5所示:圖4.5用戶登錄界面代碼如下: //用戶登錄操作 /** *Methodexecute *@parammapping *@paramform *@paramrequest *@paramresponse *@returnActionForward */publicActionForwardlogin(ActionMappingmapping,ActionFormform, HttpServletRequestrequest,HttpServletResponseresponse){ MemLoginFormmemLoginForm=(MemLoginForm)form; MemServiceservice=newMemServiceImpl(); ActionForwardforward=null; ActionMessagesmsgs=newActionMessages(); try{ Membermem=service.memLogin(memLoginForm.getLoginName(),memLoginForm.getLoginPwd()); if(mem!=null){ request.getSession().setAttribute("member",mem); forward=newActionForward("/mer.do?method=browseIndexMer"); }else{ forward=mapping.getInputForward(); msgs.add("loginError",newActionMessage(Constants.ADMIN_LOGINERROR_KEY)); saveErrors(request,msgs); }}catch(Exceptionex){ ("在執(zhí)行LoginAction類中的login方法時(shí)出錯(cuò):\n"); ex.printStackTrace();} returnforward; }4.3.2購(gòu)物車頁(yè)面實(shí)現(xiàn)用戶看到自己喜歡的商品可以添加購(gòu)物車,可以在購(gòu)物車中修改預(yù)定數(shù)量、繼續(xù)挑選商品或是刪除預(yù)定、生成訂單,具體如圖4.6所示:圖4.6購(gòu)物車頁(yè)面代碼如下://購(gòu)物車列表publicActionForwardbrowseCart(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){ActionForwardforward=null;CartServicecartService=newCartServiceImpl();MerServicemerService=newMerServiceImpl(); Maprow=null;Listresult=null;doublemoney=0;try{ DecimalFormatdf=newDecimalFormat(".##"); //判斷會(huì)員是否已成功登錄 Membermem=(Member)request.getSession().getAttribute("member"); if(mem==null){ forward=mapping.findForward("memSorry"); }else{ Listtmp=cartService.browseCart(mem); if(tmp!=null&&tmp.size()>0){ result=newArrayList(); Iteratorit=tmp.iterator(); Cartselectedmersel=null; Merchandisemer=null; while(it.hasNext()){ row=newHashMap(); sel=(Cartselectedmer)it.next(); mer=merService.loadMer(sel.getMerchandise()); row.put("merId",mer.getId()); row.put("selId",sel.getId()); row.put("merName",mer.getMerName().trim()); row.put("memprice",Double.valueOf(df.format(sel.getPrice()))); row.put("price",Double.valueOf(df.format(mer.getPrice()))); row.put("number",sel.getNumber()); row.put("money",sel.getMoney()); money=money+sel.getMoney().doubleValue(); result.add(row);}request.setAttribute("result",result); request.setAttribute("totalMoney",Double.valueOf(df.format(money))); }forward=mapping.findForward("browseCart");} }catch(Exceptionex){ ("在執(zhí)行CartAction類中的browseCart方法時(shí)出錯(cuò):\n");ex.printStackTrace();}returnforward;}4.3.3查看訂單頁(yè)面實(shí)現(xiàn)用戶添加購(gòu)物車后如果沒(méi)有想要購(gòu)買的商品后可以選擇結(jié)賬生成訂單,然后可以在查看訂單中查看預(yù)定詳情,訂單狀態(tài)等,如圖4.7所示:圖4.7訂單頁(yè)面代碼如下: //我的訂單信息列表 /** *Methodexecute *@parammapping *@paramform *@paramrequest *@paramresponse *@returnActionForward */ publicActionForwardbrowseOrder(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){ ActionForwardforward=null; OrderServiceservice=newOrderServiceImpl(); Listresult=null; try{ //判斷會(huì)員是否已成功登錄 Membermem=(Member)request.getSession().getAttribute("member"); if(mem==null){ forward=mapping.findForward("memSorry"); }else{ result=service.browseOrder(mem); if(result!=null&&result.size()>0)request.setAttribute("result",result); forward=mapping.findForward("browseOrder"); } }catch(Exceptionex){ ("在執(zhí)行OrderAction類中的browseOrder方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); } returnforward; }4.3.4留言板頁(yè)面實(shí)現(xiàn)用戶預(yù)定后可以填寫(xiě)對(duì)所購(gòu)買商品的留言信息,如圖4.8所示:圖4.8留言頁(yè)面代碼如下://我的留言信息列表/**分頁(yè)瀏覽所有留言*/publicListbrowseWord(intpageSize,intpageNo)throwsException{Sessionsession=MySessionFactory.getSession();Transactiontx=null;Listlist=null;try{Queryquery=session.createQuery("fromLeavewordasaorderbya.iddesc"); query.setMaxResults(pageSize); query.setFirstResult((pageNo-1)*pageSize);tx=session.beginTransaction(); list=query.list(); mit(); if(!Hibernate.isInitialized(list))Hibernate.initialize(list);}catch(Exceptionex){ if(tx!=null)tx.rollback(); ("在執(zhí)行WordServiceImpl類中的browseWord方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); }finally{ MySessionFactory.closeSession(); } returnlist; }4.3.5修改個(gè)人信息頁(yè)面實(shí)現(xiàn)用戶登錄后可以修改個(gè)人信息,如圖4.9所示:圖4.9修改個(gè)人信息頁(yè)面代碼如下: /**修改注冊(cè)會(huì)員*/ publicbooleanupdateMember(Membermember)throwsException{ Sessionsession=MySessionFactory.getSession(); Transactiontx=null; booleanresult=false; try{ tx=session.beginTransaction(); session.update(member); mit(); result=true; }catch(Exceptionex){ if(tx!=null)tx.rollback(); ("在執(zhí)行MemServiceImpl類中的updateMember方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); }finally{ MySessionFactory.closeSession(); } returnresult; }4.3.6商品管理頁(yè)面實(shí)現(xiàn)管理員可以添加商品信息,如商品名稱、價(jià)格、上傳圖片,修改或是刪除,同時(shí)可以導(dǎo)出表格等操作,如圖4.10所示: 圖4.10商品管理頁(yè)面代碼如下://商品信息列表 /**分頁(yè)瀏覽商品*/ publicListbrowseMer(intpageSize,intpageNo,intcateId,booleanisSpecial)throwsException{ Sessionsession=MySessionFactory.getSession(); Transactiontx=null; Listlist=null; try{ Stringhql="fromMerchandiseasa"; if(isSpecial){ //特價(jià)商品 hql=hql+"wherea.special=1"; }else{//普通商品 hql=hql+"wherea.special=0"; } if(cateId!=0){//指定類別 hql=hql+"anda.category.id="+cateId; } hql=hql+"orderbya.iddesc"; Queryquery=session.createQuery(hql); query.setMaxResults(pageSize); query.setFirstResult((pageNo-1)*pageSize); tx=session.beginTransaction(); list=query.list(); mit(); if(!Hibernate.isInitialized(list))Hibernate.initialize(list); }catch(Exceptionex){ if(tx!=null)tx.rollback(); ("在執(zhí)行MerServiceImpl類中的browseMer方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); }finally{ MySessionFactory.closeSession(); } returnlist; }4.3.7后臺(tái)訂單處理實(shí)現(xiàn)管理員在后臺(tái)可以查看商品的銷售情況,在此處可以查看訂單、處理訂單或是刪除訂單,如圖4.11所示:圖4.11會(huì)員訂單管理頁(yè)面代碼如下: publicActionForwardviewOrder(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){ OrderServiceservice=newOrderServiceImpl(); MerServicemerService=newMerServiceImpl(); Maprow=null; Listresult=null; Ordersorder=null; Integerid=newInteger(0); if(request.getParameter("id")!=null)id=newInteger(request.getParameter("id")); try{ order=service.loadOrder(id); if(order!=null){ Listtmp=service.browseOrderMer(order.getCart()); if(tmp!=null&&tmp.size()>0){ result=newArrayList(); Iteratorit=tmp.iterator(); Cartselectedmersel=null; Merchandisemer=null; while(it.hasNext()){ row=newHashMap(); sel=(Cartselectedmer)it.next(); mer=merService.loadMer(sel.getMerchandise()); row.put("merName",mer.getMerName().trim()); row.put("memprice",sel.getPrice()); row.put("price",mer.getPrice()); row.put("number",sel.getNumber()); row.put("money",sel.getMoney()); result.add(row); } request.setAttribute("result",result); } request.setAttribute("order",order); } }catch(Exceptionex){ ("在執(zhí)行AdminOrderAction類中的viewOrder方法時(shí)出錯(cuò):\n"); ex.printStackTrace(); } returnmapping.findForward("viewOrder"); }以上是系統(tǒng)中主要頁(yè)面的介紹。5系統(tǒng)測(cè)試5.1測(cè)試原理主要技術(shù)指標(biāo)是基于測(cè)量系統(tǒng)軟件任務(wù)、軟件功能和性能的綜合測(cè)評(píng)的發(fā)展。該原則的基本理論測(cè)試,軟件測(cè)試,測(cè)試方法和實(shí)際應(yīng)用試驗(yàn)是測(cè)試原理方法得到的[9]。基于相似性的應(yīng)遵循一般原則和軟件測(cè)試的方法。同時(shí),針對(duì)軟件的優(yōu)點(diǎn),必須找到合適的測(cè)試方法。測(cè)試用例進(jìn)行測(cè)試和評(píng)估軟件的合理性起著關(guān)鍵的作用,但如何使設(shè)計(jì),合理,有效的用例通常都是不容易的。所以應(yīng)該用軟件以及最終開(kāi)發(fā)的、有針對(duì)性的實(shí)際操作環(huán)境和描述研究,形成一套是合理的測(cè)試案例。另一方面,在軟件運(yùn)行環(huán)境的復(fù)雜性中起著軟件評(píng)估的重要作用,因此,應(yīng)以便利的現(xiàn)實(shí)背景研究盡可能運(yùn)行。5.2測(cè)試結(jié)果分析程序員要盡量避免自己編寫(xiě)的程序出現(xiàn)錯(cuò)誤;測(cè)試用例的設(shè)計(jì)必須包括預(yù)期的輸出結(jié)果;測(cè)試應(yīng)包括有效的輸入條件和期望、無(wú)效的和不得人心的輸入條件;所有的試驗(yàn)應(yīng)追溯到用戶的需求,所有測(cè)試活動(dòng)都要有計(jì)劃,該計(jì)劃可以保證程序順利。檢查程序只完成了一半這個(gè)測(cè)試應(yīng)該做的,而另一半做檢查程序是否是不應(yīng)該做的;在錯(cuò)誤概率的一個(gè)程序中的錯(cuò)誤的數(shù)量,該計(jì)劃已被發(fā)現(xiàn)是成正比的;測(cè)試上必須有明確的目標(biāo);
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)參考:緊密型城市醫(yī)療集團(tuán)內(nèi)患者就醫(yī)行為與衛(wèi)生資源配置的協(xié)同性研究
- 2025年專題講座心得體會(huì)樣本(3篇)
- 2025年度木材行業(yè)木方材料進(jìn)出口采購(gòu)合同范本4篇
- 二零二五版現(xiàn)代農(nóng)業(yè)園區(qū)麻石灌溉系統(tǒng)合同4篇
- 二零二五年度知識(shí)產(chǎn)權(quán)許可使用合同爭(zhēng)議處理規(guī)則范本4篇
- 二零二五年度城市公交公司駕駛員服務(wù)合同標(biāo)準(zhǔn)模板3篇
- 2025年公共安全項(xiàng)目投標(biāo)失敗應(yīng)急響應(yīng)與合同條款合同3篇
- 二零二五年度出差安全教育與安全保障合作協(xié)議4篇
- 二零二五年度出境游領(lǐng)隊(duì)導(dǎo)游服務(wù)合同4篇
- 二零二五版夾板行業(yè)供應(yīng)鏈管理合作協(xié)議4篇
- 2025貴州貴陽(yáng)市屬事業(yè)單位招聘筆試和高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年住院醫(yī)師規(guī)范化培訓(xùn)師資培訓(xùn)理論考試試題
- 期末綜合測(cè)試卷(試題)-2024-2025學(xué)年五年級(jí)上冊(cè)數(shù)學(xué)人教版
- 2024年廣東省公務(wù)員錄用考試《行測(cè)》試題及答案解析
- 結(jié)構(gòu)力學(xué)本構(gòu)模型:斷裂力學(xué)模型:斷裂力學(xué)實(shí)驗(yàn)技術(shù)教程
- 無(wú)人機(jī)技術(shù)與遙感
- 中醫(yī)藥適宜培訓(xùn)-刮痧療法教學(xué)課件
- 免疫組化he染色fishish
- 新東方四級(jí)詞匯-正序版
- 借名購(gòu)車位協(xié)議書(shū)借名購(gòu)車位協(xié)議書(shū)模板(五篇)
- 同步輪尺寸參數(shù)表詳表參考范本
評(píng)論
0/150
提交評(píng)論