基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx

上傳人:good****022 文檔編號(hào):116781729 上傳時(shí)間:2022-07-06 格式:DOCX 頁(yè)數(shù):50 大小:1.59MB
收藏 版權(quán)申訴 舉報(bào) 下載
基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx_第1頁(yè)
第1頁(yè) / 共50頁(yè)
基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx_第2頁(yè)
第2頁(yè) / 共50頁(yè)
基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx_第3頁(yè)
第3頁(yè) / 共50頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx》由會(huì)員分享,可在線閱讀,更多相關(guān)《基于JSP的小型超市信息管理系統(tǒng)_畢業(yè)論文x.docx(50頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、本科生畢業(yè)論文(設(shè)計(jì))基于JSP的小型超市信息管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)姓名學(xué)號(hào)專業(yè)指導(dǎo)教師年 月 日II摘 要隨著零售業(yè)的不斷發(fā)展,超市這種高效,方便的銷(xiāo)售模式已經(jīng)越來(lái)越成熟。目前,市場(chǎng)上的超市存在著大型化和小型化兩種趨勢(shì)。大型超市往往擁有著雄厚的資金實(shí)力,極為全面的商品種類(lèi),但也存在著網(wǎng)店覆蓋率低,不能滿足偏遠(yuǎn)地區(qū)人民需要的問(wèn)題。而小型超市則很好地填補(bǔ)了這個(gè)空白。本文是對(duì)小型超市信息管理系統(tǒng)的開(kāi)發(fā)過(guò)程進(jìn)行詳細(xì)描述的論文,目的是采用JSP/SERVLET開(kāi)發(fā),應(yīng)用MVC架構(gòu),設(shè)計(jì)一個(gè)小型超市管理系統(tǒng)。為小型超市管理系統(tǒng)提供一個(gè)價(jià)格低廉,開(kāi)發(fā)簡(jiǎn)單,維護(hù)方便,功能實(shí)用的解決方案。此次采用的軟件過(guò)程模型為

2、過(guò)程開(kāi)發(fā)模型,具體表現(xiàn)為將基本的過(guò)程活動(dòng)、描述、開(kāi)發(fā)、有效性驗(yàn)證和進(jìn)化,看成是一些界限分明的獨(dú)立的過(guò)程階段。本文一步步按照開(kāi)發(fā)過(guò)程中所涉及到的問(wèn)題進(jìn)行詳細(xì)描述,由淺至深,從構(gòu)建系統(tǒng)前進(jìn)行的需求分析,到后臺(tái)數(shù)據(jù)的處理,表單之間的傳遞等內(nèi)容,都進(jìn)行了闡釋,并附上了關(guān)鍵模塊的相關(guān)代碼。目前,本系統(tǒng)已經(jīng)可以滿足小型超市的日常經(jīng)營(yíng)需要,并期待進(jìn)一步的改進(jìn)。關(guān)鍵詞:JSP;信息管理系統(tǒng);MVC框架AbstractWith the continuous development of retail industry, the supermarket, as an effective and convenien

3、t mode of retailing, has become more and more mature. Now, the supermarkets on the market place have two trends such as maximize and minimize. The hypermarket often has solid capital or cash and very comprehensive kinds of goods. But the hypermarket also has problems. For example, their branch usual

4、ly lack of fraction of coverage, so that they could not afford the needs of people who lives at remote area, while the tiny supermarket can solve this problem very well. This article is a particular description paper of developing process of this mini supermarket management system. The purpose is de

5、veloping this system with JSP/SERVLET and applying the MVC framework, so that we can design and build this supermarket management system. We can provide a solution which is cheap, easy-developing, convenient-maintaining and functional to this management system.This system has satisfied the needs of

6、routine of the supermarket, and looked forward to a further improvement.Key Words: JSP(Java Server Page),IMS(Information Management System),MVC Frame目 錄1 引 言11.1背景11.1.1社會(huì)背景11.1.2公司背景11.1.3技術(shù)背景11.2文章結(jié)構(gòu)32 問(wèn)題定義與可行性分析42.1問(wèn)題定義42.1.1商品基本信息42.1.2人員基本信息42.1.3進(jìn)、銷(xiāo)、存42.1.4結(jié)算42.2可行性分析42.2.1技術(shù)可行性研究42.2.2經(jīng)濟(jì)可行性研究

7、53 需求分析63.1綜合描述63.2功能性需求63.2.1顧客功能性需求63.2.2管理員功能性需求73.3非功能性需求83.3.1性能需求83.3.2安全措施需求94 總體設(shè)計(jì)104.1系統(tǒng)總體設(shè)計(jì)104.2模塊設(shè)計(jì)104.3數(shù)據(jù)庫(kù)設(shè)計(jì)125 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)155.1綜合描述155.2關(guān)鍵模塊詳細(xì)設(shè)計(jì)175.2.1登錄模塊175.2.2商品信息查看模塊215.3.3購(gòu)物車(chē)模塊265.3功能性模塊設(shè)計(jì)335.3.1數(shù)據(jù)庫(kù)連接類(lèi)335.3.2編碼轉(zhuǎn)換類(lèi)345.3.3流水號(hào)生成類(lèi)345.3.4進(jìn)貨單模塊設(shè)計(jì)355.4系統(tǒng)測(cè)試415.4.1測(cè)試的目標(biāo)與方法415.4.2測(cè)試用例41結(jié) 論43參

8、考文獻(xiàn)44致 謝45IV1 引 言1.1背景本處簡(jiǎn)要介紹了小型超市信息管理系統(tǒng)的開(kāi)發(fā)背景,主要內(nèi)容包括社會(huì)背景,公司背景,技術(shù)背景三個(gè)部分。旨在為讀者闡明小型超市信息管理系統(tǒng)開(kāi)發(fā)的基調(diào),使讀者對(duì)小型超市信息管理系統(tǒng)的社會(huì)意義,背景信息有個(gè)大致的了解。1.1.1社會(huì)背景隨著我國(guó)社會(huì)主義市場(chǎng)經(jīng)濟(jì)的不斷成熟與發(fā)展,越來(lái)越多的人們意識(shí)到,第三產(chǎn)業(yè)在社會(huì)經(jīng)濟(jì)發(fā)展中起到了越來(lái)越重要的作用。超市這種形式在我國(guó)起步于20世紀(jì)90年代,現(xiàn)在已經(jīng)成為我國(guó)零售業(yè)的主要形式之一。隨著超市經(jīng)營(yíng)規(guī)模的擴(kuò)大化,商品種類(lèi)日趨豐富,原有的人工銷(xiāo)售模式已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足要求,在超市管理方面的效率也大大降低。因此,在超市經(jīng)營(yíng)中引入計(jì)

9、算機(jī)管理勢(shì)在必行。不同于純粹的電商銷(xiāo)售B2C模式,超市管理系統(tǒng)在日常經(jīng)營(yíng)中存在著自身獨(dú)有的特點(diǎn):商品種類(lèi)豐富,數(shù)據(jù)量巨大,因而不能對(duì)超市的整體經(jīng)營(yíng)狀況,相關(guān)商品的銷(xiāo)售情況,進(jìn)存貨的決策有一個(gè)宏觀上的了解。因此,我在本次設(shè)計(jì)中選擇了小型超市信息管理系統(tǒng),利用現(xiàn)代化的計(jì)算機(jī)技術(shù)來(lái)對(duì)超市經(jīng)營(yíng)中所設(shè)計(jì)到的業(yè)務(wù)進(jìn)行管理,從而節(jié)省了大量的人力物力,減少了人工操作帶來(lái)的風(fēng)險(xiǎn),并且能夠?qū)φ麄€(gè)超市的銷(xiāo)售情況有一個(gè)宏觀上的了解,從而能夠?qū)Τ邢乱徊降慕?jīng)營(yíng)策略,進(jìn)貨方向有一個(gè)數(shù)據(jù)上的支持。這允許了管理人員能夠?qū)κ袌?chǎng)的變化做出及時(shí)準(zhǔn)確的反應(yīng)。1.1.2公司背景小型超市在其日常經(jīng)營(yíng)管理中存在著自身獨(dú)有的特點(diǎn)。首先,規(guī)模

10、小,實(shí)力弱。不同于其他的大型連鎖超市,小型超市一般都以個(gè)體經(jīng)營(yíng)為主,因此存在著規(guī)模較小,成本低,實(shí)力弱的特點(diǎn)。因此在信息管理系統(tǒng)的投入上,不可能很多,所以我的設(shè)計(jì)中,要考慮到成本方面的問(wèn)題。要盡量做到在節(jié)省成本的同時(shí),滿足超市信息管理系統(tǒng)日常工作的需要。其次,缺乏相關(guān)技術(shù)人員支持。小型超市一般位于地理位置相對(duì)偏遠(yuǎn)的地區(qū),其經(jīng)營(yíng)管理人員的素質(zhì)普遍不高,同時(shí)也缺乏相應(yīng)的技術(shù)人員對(duì)系統(tǒng)進(jìn)行維護(hù)和技術(shù)支持。因此,在設(shè)計(jì)系統(tǒng)時(shí),應(yīng)盡量做到界面簡(jiǎn)潔友好,方便使用者學(xué)習(xí)使用。同時(shí),要考慮到系統(tǒng)的穩(wěn)定性。1.1.3技術(shù)背景關(guān)于JSP:JSP是由SunMicrosystems公司倡導(dǎo)、許多公司參與一起建立的一種

11、動(dòng)態(tài)技術(shù)標(biāo)準(zhǔn)。在傳統(tǒng)的網(wǎng)頁(yè)HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP標(biāo)簽,就構(gòu)成了JSP網(wǎng)頁(yè)java程序片段可以操縱數(shù)據(jù)庫(kù)、重新定向網(wǎng)頁(yè)以及發(fā)送E-mail等,實(shí)現(xiàn)建立動(dòng)態(tài)網(wǎng)站所需要的功能。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,這樣大大降低了對(duì)客戶瀏覽器的要求,即使客戶瀏覽器端不支持Java,也可以訪問(wèn)JSP網(wǎng)頁(yè)。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο?,具有平臺(tái)無(wú)關(guān)性且安全可靠,主要面向因特網(wǎng)的所有特點(diǎn)。關(guān)于MVC:MVC設(shè)計(jì)模式將一個(gè)完整的應(yīng)用分為3個(gè)組件:Model(模型),View(視圖)以及Con

12、troller(控制器)。 Model(模型):該組件是對(duì)軟件所處理問(wèn)題邏輯的一種抽象,封裝了問(wèn)題的核心數(shù)據(jù),邏輯和功能實(shí)現(xiàn),獨(dú)立于具體的界面顯示以及I/O操作。在本設(shè)計(jì)當(dāng)中,使用JAVA類(lèi)實(shí)現(xiàn)。 View(視圖):該組件將表示模型數(shù)據(jù),邏輯關(guān)系以及狀態(tài)信息,以某種形式展現(xiàn)給用戶。視圖組件從模型組件獲得顯示信息,并且對(duì)于相同的顯示信息可以通過(guò)不同的顯示形式或視圖展現(xiàn)給用戶。在本設(shè)計(jì)當(dāng)中用JSP頁(yè)面實(shí)現(xiàn)。Controller(控制器):該組件主要負(fù)責(zé)用戶與軟件之間的交互操作,控制模型狀態(tài)變化的傳播,以確保用戶界面與模型狀態(tài)的統(tǒng)一。Web應(yīng)用中當(dāng)用戶請(qǐng)求到來(lái)時(shí),控制器本身不輸出任何東西也不做任何處

13、理,它只是接收請(qǐng)求并決定調(diào)用哪個(gè)模型去處理該請(qǐng)求,然后用確定使用哪個(gè)視圖組件來(lái)顯示模型處理返回的數(shù)據(jù)。在本設(shè)計(jì)當(dāng)中,使用Servlet實(shí)現(xiàn)。 1.2文章結(jié)構(gòu)本論文由五大部分組成:第二章節(jié) 問(wèn)題定義與可行性分析。主要內(nèi)容是針對(duì)小型超市的業(yè)務(wù)流程具體情況,分析抽象業(yè)務(wù)類(lèi)型,找到并明確超市信息管理系統(tǒng)中會(huì)遇到的問(wèn)題,并就這些問(wèn)題提出解決方案??尚行苑治鍪轻槍?duì)問(wèn)題的解決方案,結(jié)合小型超市建立過(guò)程中的實(shí)際情況,對(duì)方案的可行性做出一個(gè)真實(shí),準(zhǔn)確的評(píng)估與計(jì)算。從而為以后的需求分析,系統(tǒng)設(shè)計(jì)確立一個(gè)明確的方向。第三章節(jié) 需求分析。此章節(jié)的編寫(xiě)基本按照需求分析報(bào)告的格式展開(kāi)。對(duì)小型超市的各個(gè)業(yè)務(wù)模塊進(jìn)行分析,劃

14、分系統(tǒng)的各個(gè)部分。數(shù)據(jù)庫(kù)建模的內(nèi)容也在此章節(jié)包含。第四章節(jié) 總體設(shè)計(jì)。在需求分析完成的基礎(chǔ)之上,對(duì)小型超市信息管理系統(tǒng)的各個(gè)模塊進(jìn)行總體設(shè)計(jì),對(duì)用戶界面進(jìn)行詳細(xì)的介紹和明確。第五章節(jié) 系統(tǒng)詳細(xì)設(shè)計(jì)。在總體設(shè)計(jì)完成的基礎(chǔ)上,對(duì)系統(tǒng)關(guān)鍵模塊的功能進(jìn)行實(shí)現(xiàn)。對(duì)每個(gè)功能的輸入輸出,變量傳遞,各模塊在執(zhí)行任務(wù)時(shí)的數(shù)據(jù)流程,工作流程進(jìn)行事先。進(jìn)而對(duì)各個(gè)模塊的功能進(jìn)行明確。2 問(wèn)題定義與可行性分析2.1問(wèn)題定義本處主要內(nèi)容是小型超市信息管理系統(tǒng)的問(wèn)題定義部分。作者通過(guò)日常生活的超市購(gòu)物經(jīng)歷,深入分析小型超市信息管理系統(tǒng)可能或正在面對(duì)的問(wèn)題,并以問(wèn)題定義的方式提出。旨在確立小型超市信息管理系統(tǒng)的開(kāi)發(fā)方向,為以

15、后的需求分析定下基調(diào)。2.1.1商品基本信息1商品信息按照統(tǒng)一格式存入數(shù)據(jù)庫(kù);2商品按類(lèi)進(jìn)行編整,進(jìn)貨;3商品類(lèi)型不能刪除,每種類(lèi)型都必須有商品;4商品廠家要有記錄。2.1.2人員基本信息1只有管理員可以登錄該系統(tǒng)后臺(tái);2管理員只有注冊(cè)過(guò)才能登錄系統(tǒng); 3管理員可以對(duì)管理員表進(jìn)行操作,但不能刪除其他管理員;4顧客可以直接進(jìn)入系統(tǒng)進(jìn)行購(gòu)物。2.1.3進(jìn)、銷(xiāo)、存1進(jìn)貨后要對(duì)商品存量進(jìn)行更新;2后要對(duì)商品存量進(jìn)行更新。2.1.4結(jié)算以購(gòu)物車(chē)形式實(shí)現(xiàn)。2.2可行性分析可行性分析是任何一個(gè)系統(tǒng)開(kāi)發(fā)項(xiàng)目所不能缺少的一環(huán)??尚行苑治龅囊饬x就在于當(dāng)開(kāi)發(fā)者已經(jīng)明確開(kāi)發(fā)過(guò)程中可能會(huì)出現(xiàn)的問(wèn)題時(shí),要對(duì)這些目標(biāo),問(wèn)題

16、進(jìn)行實(shí)際意義的分析。從而避免那些明顯超出能力范圍,成本范圍,以及冗余繁雜的模塊,代碼等。在一個(gè)項(xiàng)目開(kāi)發(fā)的前期明確哪些功能,哪些目標(biāo)是可以達(dá)成的,顯然非常重要。2.2.1技術(shù)可行性研究在IT行業(yè)中從業(yè)的工作人員一般都要求懂計(jì)算機(jī),具有一定軟硬件基礎(chǔ),會(huì)使用各種管理軟件,熟悉IT產(chǎn)品。因?yàn)?,超市中的?duì)員工素質(zhì)要求比較高,從管理層到下面的營(yíng)銷(xiāo)人員,都要求具有一定的IT背景,所以在新系統(tǒng)投入使用時(shí),只要對(duì)員工進(jìn)行少量的培訓(xùn),系統(tǒng)的功能和使用方法就基本上能夠使系統(tǒng)順利的運(yùn)行了。2.2.2經(jīng)濟(jì)可行性研究因?yàn)橥ㄟ^(guò)網(wǎng)絡(luò)傳遞銷(xiāo)售信息,可以不受距離的限制,因此可以節(jié)約許多的人力和物力,方便管理,由此可以減少不必要

17、的開(kāi)支,同時(shí)該系統(tǒng)可以提高企業(yè)的銷(xiāo)售效率,即提高了企業(yè)的經(jīng)濟(jì)效益,所以從經(jīng)濟(jì)上是完全可行的。開(kāi)發(fā)新系統(tǒng)的工作是一項(xiàng)艱巨復(fù)雜的工作,它的投資主要是人力和物力的投資。對(duì)于本系統(tǒng)的開(kāi)發(fā)來(lái)說(shuō),其主要投資還是在人力和物力兩個(gè)方面。如果是企業(yè)自己安排人手開(kāi)發(fā)系統(tǒng)的話,其主要的投資還是在人力資源上,從系統(tǒng)的業(yè)務(wù)需求調(diào)查到系統(tǒng)的分析編碼制作都是需要巨大的人力投入的。超市作為一個(gè)尖端的高科技產(chǎn)業(yè),其員工要求都比一般企業(yè)的要求要高,而且對(duì)系統(tǒng)開(kāi)發(fā)及軟件產(chǎn)業(yè)了解比較多,所以在自我開(kāi)發(fā)管理系統(tǒng)的過(guò)程中,企業(yè)自己比較容易安排人手,這樣就可以為企業(yè)節(jié)約大部分的額外開(kāi)支。同時(shí)超市就其他產(chǎn)品還說(shuō),屬于高端行業(yè),無(wú)論是產(chǎn)品的價(jià)

18、格還是質(zhì)量都比較高,而經(jīng)營(yíng)產(chǎn)品的經(jīng)銷(xiāo)商或者是商家都要求有雄厚的資金的作支持。所以,在系統(tǒng)的開(kāi)發(fā)過(guò)程中,企業(yè)完全有能力承擔(dān)開(kāi)發(fā)費(fèi)用。管理系統(tǒng)是一個(gè)信息化、智能化和先進(jìn)管理理念的集合體。而管理是一個(gè)動(dòng)態(tài)過(guò)程,在其運(yùn)行過(guò)程中要采取多項(xiàng)措施。所以在管理中獲得經(jīng)濟(jì)效益是一個(gè)綜合效益,要對(duì)他進(jìn)行直接定量的分析是比較困難的。一般新系統(tǒng)帶來(lái)的經(jīng)濟(jì)效益是間接的,其最主要的表現(xiàn)就是減少了企業(yè)的管理費(fèi)用和人力開(kāi)支。而其他一些煩瑣的事物都通過(guò)新系統(tǒng)來(lái)加以分析解決,不僅節(jié)省了大量的時(shí)間,還為企業(yè)的各項(xiàng)決策提供了寶貴的資料,為企業(yè)帶來(lái)巨大的經(jīng)濟(jì)效益。3 需求分析3.1綜合描述編寫(xiě)目的:第二章節(jié)的編寫(xiě)主要是為后面的系統(tǒng)詳細(xì)

19、設(shè)計(jì)打下基礎(chǔ)。通過(guò)需求分析的編寫(xiě),要明確系統(tǒng)可以分為哪些模塊,每個(gè)模塊實(shí)現(xiàn)的作用都有哪些,不同人員對(duì)系統(tǒng)的要求都有哪些。使讀者對(duì)這個(gè)小型超市信息管理系統(tǒng)的設(shè)計(jì)思想有一個(gè)初步的了解。預(yù)期讀者:本章節(jié)的預(yù)期讀者包括設(shè)計(jì)人員,超市信心管理系統(tǒng)的使用者,管理員。因此在設(shè)計(jì)時(shí)盡量做到圖文兼?zhèn)?,使得閱讀者能夠了解系統(tǒng)的工作流程,相關(guān)數(shù)據(jù)的交互。運(yùn)行環(huán)境:本系統(tǒng)開(kāi)發(fā)環(huán)境具體如下:1 windows7操作系統(tǒng);2 Myeclipse6.0.1;3 Mysql5.5;4支持Html ,JavaScript的瀏覽器,如 IE9。3.2功能性需求功能性需求是整個(gè)需求分析章節(jié)最為重要的部分。它直接決定了系統(tǒng)的模塊劃分

20、,業(yè)務(wù)邏輯,明確了使用者對(duì)小型超市信息管理系統(tǒng)功能的要求。一個(gè)完善的,明確的,詳細(xì)的功能性需求分析是開(kāi)發(fā)一個(gè)系統(tǒng)的關(guān)鍵。成功的功能性需求分析可以避免后期對(duì)系統(tǒng)的大范圍改動(dòng)甚至是推倒重建,因此,本部分極為重要。3.2.1顧客功能性需求1不用輸入用戶名,密碼 ,直接登錄超市管理系統(tǒng)的商品頁(yè)面;2查看商品的基本信息,包括 商品編號(hào),單價(jià),余量,廠家,生產(chǎn)日期,保質(zhì)期;3在購(gòu)物車(chē)中查看自己選中的商品名稱,價(jià)格,數(shù)量,并可以從購(gòu)物車(chē)中移除某些商品,查看總價(jià),并可以選擇結(jié)賬或選擇繼續(xù)購(gòu)物;4點(diǎn)擊結(jié)賬后顯示結(jié)賬成功并退出系統(tǒng)。相關(guān)用例圖見(jiàn)圖3-1。圖3-1 顧客用例圖顧客用例 “查看商品基本信息”的用例描述

21、見(jiàn)表3-1。其他用例類(lèi)似于此,不再一一贅述。表3-1 用例描述-查看商品基本信息使用者顧客用例查看商品基本信息參與者顧客,小型超市信息管理系統(tǒng)數(shù)據(jù)顧客向超市信息管理系統(tǒng)發(fā)送商品相關(guān)信息,如商品名,商品類(lèi)型,商品編號(hào)等激勵(lì)超市信息管理系統(tǒng)根據(jù)用戶發(fā)送的字段,查詢后臺(tái)數(shù)據(jù)庫(kù)響應(yīng)超市信息管理系統(tǒng)返回查詢商品結(jié)果備注無(wú)3.2.2管理員功能性需求1打開(kāi)網(wǎng)站后,進(jìn)入登錄頁(yè)面。輸入用戶名,密碼 登錄系統(tǒng)。2登陸后,選擇進(jìn)入系統(tǒng)人員管理頁(yè)面或者商品信息管理頁(yè)面。在系統(tǒng)人員管理頁(yè)面中,查看其它管理員的信息,并可以添加新的管理員。在商品信息管理頁(yè)面,可以查看全部商品的信息,包括商品編號(hào),進(jìn)價(jià),單價(jià),余量,廠家,生

22、產(chǎn)日期,保質(zhì)期。3進(jìn)入商品信息管理頁(yè)面的進(jìn)貨管理頁(yè)面,可以填寫(xiě)進(jìn)貨單,實(shí)現(xiàn)相關(guān)產(chǎn)品數(shù)量的增加。4進(jìn)入商品信息管理頁(yè)面的銷(xiāo)售查看頁(yè)面,可以查看近期各項(xiàng)商品的銷(xiāo)售情況。5點(diǎn)擊頁(yè)面右上角的退出按鈕,直接退出系統(tǒng)并跳轉(zhuǎn)到登錄頁(yè)面。相關(guān)用例圖見(jiàn)圖3-2 管理員功能性需求用例圖。圖3-2 管理員功能性需求用例圖3.3非功能性需求非功能性需求分析主要是對(duì)面向系統(tǒng)性能方面的要求進(jìn)行分析,以確定諸如硬件配置,數(shù)據(jù)庫(kù)連接等問(wèn)題。非功能性需求的合理確定會(huì)給系統(tǒng)的后期維護(hù),硬件升級(jí),系統(tǒng)性能分析等帶來(lái)很大的便利。3.3.1性能需求相互合作的用戶數(shù)量1;系統(tǒng)支持的并發(fā)操作數(shù)量1。容量需求:存儲(chǔ)器:2G;磁盤(pán)空間:10G

23、;數(shù)據(jù)庫(kù)中表的最大行數(shù):無(wú)規(guī)定。3.3.2安全措施需求1主機(jī)設(shè)備和網(wǎng)絡(luò)通信設(shè)備必須有備份,并處于實(shí)時(shí)備用狀態(tài)。2建立設(shè)備檔案,詳細(xì)記錄設(shè)備的基本情況(包括升級(jí)、更新情況等)、故障現(xiàn)象、故障分析、維修過(guò)程、處理結(jié)果等內(nèi)容。設(shè)備發(fā)生故障時(shí)應(yīng)及時(shí)維修,必要時(shí),通知供貨廠商(代理商)的技術(shù)人員到場(chǎng)解決。3在下列情況下須進(jìn)行系統(tǒng)軟件的系統(tǒng)級(jí)全備份:新系統(tǒng)投入運(yùn)營(yíng)上線之前;系統(tǒng)軟件升級(jí)之前和之后;固定的周期時(shí)點(diǎn)(如季末、年末等;特定時(shí)點(diǎn)(如災(zāi)難應(yīng)急演練前、系統(tǒng)發(fā)生重大事故恢復(fù)后等)。4在下列情況下須進(jìn)行數(shù)據(jù)庫(kù)零級(jí)備份:新系統(tǒng)上線時(shí)(最好全備);結(jié)帳前后;年終結(jié)算;固定周期時(shí)點(diǎn)(如一個(gè)月);特定時(shí)點(diǎn)(如系統(tǒng)

24、發(fā)生重大事故恢復(fù)之前、之后)。5在下列情況下須進(jìn)行數(shù)據(jù)庫(kù)增量備份:兩次零級(jí)備份之間必須每日做增量備份。4 總體設(shè)計(jì)4.1系統(tǒng)總體設(shè)計(jì)系統(tǒng)總體設(shè)計(jì)圖如圖4-1所示。當(dāng)使用人員登錄系統(tǒng)后,按身份的不同進(jìn)入各自的頁(yè)面,并使用系統(tǒng)提供的功能。管理員的人員信息管理屬于操作者所有,在此本系統(tǒng)默認(rèn)管理員可以操作其他管理員的信息。圖4-1 系統(tǒng)總體設(shè)計(jì)圖4.2模塊設(shè)計(jì)本處將對(duì)小型超市信息管理系統(tǒng)進(jìn)行分模塊設(shè)計(jì),明確各個(gè)模塊的操作流程,功能如何使用等問(wèn)題。1 登錄模塊超市信息管理系統(tǒng)的使用者主要有兩種:普通的顧客和管理員。按照日常生活中超市的運(yùn)作流程,普通顧客不需要為其設(shè)立專門(mén)的數(shù)據(jù)表,所以只需要實(shí)現(xiàn)管理員的登

25、錄模塊。使用者進(jìn)入系統(tǒng)后,首先進(jìn)入歡迎界面。普通顧客點(diǎn)擊“開(kāi)始購(gòu)物旅程”超鏈接,直接進(jìn)入購(gòu)物界面。管理員點(diǎn)擊“進(jìn)入后臺(tái)系統(tǒng)”超鏈接,進(jìn)入管理員登陸界面。由于管理員對(duì)系統(tǒng)有操作,查看等權(quán)限,因此不允許在登陸頁(yè)面注冊(cè)新的管理員。登陸成功后跳轉(zhuǎn)至管理員管理頁(yè)面,否則顯示“Login fail”登陸失敗。當(dāng)輸入正確的姓名,密碼后,界面自動(dòng)跳轉(zhuǎn)到管理員管理歡迎界面。2 商品信息管理模塊管理員進(jìn)入后臺(tái)管理界面后,點(diǎn)擊“商品信息管理頁(yè)面”超鏈接,進(jìn)入商品信息管理頁(yè)面。頁(yè)面查詢后臺(tái)數(shù)據(jù)庫(kù)數(shù)據(jù),將所有商品信息展示在右側(cè)頁(yè)面上。若管理員需要對(duì)相關(guān)商品信息作出修改,或者刪除某項(xiàng)商品信息。則點(diǎn)擊相應(yīng)的超鏈接進(jìn)行操作。

26、刪除成功后系統(tǒng)會(huì)提示“刪除成功”。點(diǎn)擊“更新”,系統(tǒng)會(huì)進(jìn)入商品信息更新頁(yè)面。在頁(yè)面中,已經(jīng)預(yù)先填好了所選商品信息。這允許管理員僅對(duì)需要修改的字段內(nèi)容修改,避免了全盤(pán)輸入的麻煩。若管理員需要添加新商品,則點(diǎn)擊“添加新商品”鏈接。系統(tǒng)跳轉(zhuǎn)到 商品信息添加頁(yè)面。在此頁(yè)面填入相應(yīng)的商品信息,點(diǎn)擊“添加”按鈕。若各個(gè)字段的值都符合要求,則系統(tǒng)提示“添加成功”。再點(diǎn)擊左側(cè)“商品信息管理頁(yè)面”,則可以看到剛才插入的商品信息。3 進(jìn)貨單管理模塊進(jìn)貨是超市正常運(yùn)營(yíng),及時(shí)跟進(jìn)市場(chǎng)最新動(dòng)態(tài),調(diào)整售貨方向的最重要的手段。進(jìn)貨單管理模塊用來(lái)實(shí)現(xiàn)進(jìn)貨功能,管理員可以填寫(xiě)進(jìn)貨單實(shí)現(xiàn)對(duì)商品表及進(jìn)貨單表的更新。在 管理員管理歡

27、迎界面 點(diǎn)擊“進(jìn)貨單管理頁(yè)面”,系統(tǒng)跳轉(zhuǎn)到進(jìn)貨單管理頁(yè)面。由于進(jìn)貨操作是管理員對(duì)超市經(jīng)營(yíng)情況收集信息的重要途徑,因此不允許對(duì)進(jìn)貨單進(jìn)行修改操作,以便進(jìn)行對(duì)賬,合計(jì)等操作。點(diǎn)擊“增加進(jìn)貨單”鏈接,系統(tǒng)跳轉(zhuǎn)至進(jìn)貨信息添加頁(yè)面。在進(jìn)貨信息添加頁(yè)面中,當(dāng)管理員填寫(xiě)好相應(yīng)的字段后,點(diǎn)擊“添加”按鈕。系統(tǒng)在后臺(tái)會(huì)自動(dòng)查找填入的商品名。如果以前存在同名的商品,則在原來(lái)的商品的基礎(chǔ)上,對(duì)數(shù)量作出修改。如果查不到填入的商品名,則在商品表中新建一條記錄。最后,在進(jìn)貨單表中生成相應(yīng)的進(jìn)貨記錄。4 管理員信息管理模塊在管理員管理歡迎界面,點(diǎn)擊“管理員信息管理頁(yè)面”。系統(tǒng)跳轉(zhuǎn)至管理員信息管理界面。在此界面上,可以實(shí)現(xiàn)對(duì)

28、管理員信息的增刪改,在此不再一一贅述。5 交易信息查看模塊顧客每次在超市的消費(fèi)都會(huì)有相應(yīng)的記錄。由于小型超市規(guī)模的限制,不可能大量保存每筆交易的詳細(xì)信息,因此系統(tǒng)以交易流水號(hào)的形式表示每筆交易。此模塊就是供管理員查看交易信息的記錄。由于交易信息是對(duì)超市中已存在的交易行為的記錄,因此不允許管理員對(duì)交易信息進(jìn)行修改,只能在記錄較多時(shí)刪除某條記錄。6 退出模塊管理員在左側(cè)菜單點(diǎn)擊“退出”鏈接,進(jìn)入“確認(rèn)退出頁(yè)面”。7購(gòu)物模塊在開(kāi)始頁(yè)面點(diǎn)擊“開(kāi)始購(gòu)物旅程”鏈接,跳轉(zhuǎn)到購(gòu)物頁(yè)面。點(diǎn)擊一項(xiàng)商品后的添加至購(gòu)物車(chē)鏈接,會(huì)提示添加成功,并選擇查看購(gòu)物車(chē)或繼續(xù)購(gòu)物。點(diǎn)擊“查看購(gòu)物車(chē)”進(jìn)入購(gòu)物車(chē)管理頁(yè)面??梢詫?shí)現(xiàn)對(duì)

29、購(gòu)物車(chē)中商品數(shù)量的修改,查看目前已購(gòu)買(mǎi)商品的價(jià)格總計(jì),或者選擇刪除購(gòu)物車(chē)中的某項(xiàng)商品,甚至清空購(gòu)物車(chē)。點(diǎn)擊“結(jié)賬”鏈接,系統(tǒng)在新頁(yè)面中會(huì)生成一個(gè)交易流水號(hào),繼續(xù)點(diǎn)擊“結(jié)賬”,如果后臺(tái)保存成功,則提示交易完成,點(diǎn)擊鏈接離開(kāi)。4.3數(shù)據(jù)庫(kù)設(shè)計(jì)商品基本信息表見(jiàn)表4-1。表4-1 商品基本信息表名稱含義類(lèi)型約束備注GoodsID商品IDInt 20主鍵自動(dòng)增長(zhǎng)GoodsName商品名稱Varchar 10唯一值GoodsType商品類(lèi)型Int 20不為空GoodsPrice單價(jià)Int 10不為空GoodsPurchasePrice進(jìn)價(jià)Int 10不為空GoodsAmount商品數(shù)量Int 10不為空G

30、oodsGetTime進(jìn)貨日期Date不為空GoodsMaintainTime保質(zhì)期Int 10不為空單位為(天)GoodsFactory生產(chǎn)廠家Varchar 50不為空員工信息表見(jiàn)表 4-2。表4-2 員工信息表名稱含義類(lèi)型約束備注MemberID員工IDInt 20主鍵自動(dòng)增長(zhǎng)MemberName員工姓名Varchar 10不為空MemberPassword員工密碼Varchar 6不為空MemberSex員工性別Int 1不為空1:男 2:女MemberAge員工年齡Int 10可為空進(jìn)貨單表見(jiàn)表4-3。表4-3 進(jìn)貨單表名稱含義類(lèi)型約束備注Input_ID進(jìn)貨單IDInt 50主鍵自

31、動(dòng)增長(zhǎng)Input_GoodsID商品IDInt 20不為空Input_GoodsName商品名稱Varchar 10唯一值Input_GoodsType商品類(lèi)型Int 20不為空Input_GoodsPrice單價(jià)Int 10不為空Input_GoodsPurchasePrice進(jìn)價(jià)Int 10不為空Input_GoodsAmount商品數(shù)量Int 10不為空Input_GoodsGetTime進(jìn)貨日期Date不為空Input_GoodsMaintainTime保質(zhì)期Int 10不為空單位為(天)Input_GoodsFactory生產(chǎn)廠家Varchar 50不為空訂單表見(jiàn)表4-4。表4-4

32、訂單表名稱含義類(lèi)型約束備注Account_ID訂單IDInt 20主鍵自動(dòng)增長(zhǎng)Account_GoodsID商品IDInt 20不為空Account_Code交易流水號(hào)Varchar 50外鍵 參照Sale表code不為空Account_GoodsCount購(gòu)買(mǎi)商品數(shù)量Int 10不為空交易單表見(jiàn)表4-5。表4-5 交易單表名稱含義類(lèi)型約束備注Sale_ID交易單IDVarchar 20主鍵自動(dòng)增長(zhǎng)Sale_Date交易日期Date不為空Sale_Accountcode交易流水號(hào)Varchar 50不為空在進(jìn)行小型超市信息管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),要綜合考慮到超市的經(jīng)營(yíng)成本,維護(hù)成本,員工素質(zhì)等

33、問(wèn)題。因此在設(shè)計(jì)表時(shí),要盡量做到簡(jiǎn)潔有效,結(jié)構(gòu)清晰。過(guò)多的外鍵,約束,甚至于不必要的字段等都是在小型超市設(shè)計(jì)中所要避免的。因此在設(shè)計(jì)商品表時(shí),只涉及了關(guān)于貨物的基本信息,在人員信息表設(shè)計(jì)時(shí),只涉及了人員最基本的信息,避免了其他冗雜的字段帶來(lái)的大量數(shù)據(jù)空間消耗以及維護(hù)上和開(kāi)發(fā)上的困難,從而為商品信息及交易信息的存貯留下了充裕的空間。當(dāng)然,隨著超市的經(jīng)營(yíng),規(guī)模上的擴(kuò)大在所難免,員工信息,交易記錄的復(fù)雜度將會(huì)日漸上升。但由于小型超市信息管理系統(tǒng)采用了MVC框架結(jié)構(gòu),因此在系統(tǒng)升級(jí),表結(jié)構(gòu)改變上相對(duì)簡(jiǎn)單,成本較低。5 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)5.1綜合描述由于小型超市信息管理系統(tǒng)結(jié)構(gòu)比較簡(jiǎn)單,相對(duì)大型的,成

34、熟的超市采用的管理系統(tǒng)來(lái)說(shuō),無(wú)論在系統(tǒng)的性能,結(jié)構(gòu)復(fù)雜度,安全性上面都無(wú)法與之相比。因此在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),應(yīng)盡量做到結(jié)構(gòu)清晰,編碼方式合理,代碼與系統(tǒng)的可維護(hù)性較高。在本章節(jié)中,選取小型超市信息管理系統(tǒng)關(guān)鍵模塊進(jìn)行設(shè)計(jì)闡述。主要模塊有登錄模塊,商品信息查看模塊,購(gòu)物車(chē)模塊三部分。有關(guān)本系統(tǒng)的文件結(jié)構(gòu)見(jiàn)圖5-1,圖5-2。圖5-1 系統(tǒng)文件結(jié)構(gòu)描述:controller包主要是存放servlet類(lèi),實(shí)現(xiàn)業(yè)務(wù)邏輯與功能函數(shù),接受表單傳參。每個(gè)servlet類(lèi)都要在xml文件中進(jìn)行注冊(cè),以便系統(tǒng)進(jìn)行調(diào)用。Dao包主要是存放數(shù)據(jù)庫(kù)操作類(lèi)。每個(gè)controller類(lèi)的功能都是通過(guò)dao類(lèi)的函數(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)

35、庫(kù)的操作。Entity包主要是存放數(shù)據(jù)庫(kù)實(shí)體類(lèi),每個(gè)java類(lèi)都對(duì)應(yīng)著數(shù)據(jù)中的表,除了shoppingcart類(lèi)。實(shí)體類(lèi)主要是實(shí)現(xiàn)接受參數(shù),返回查詢結(jié)果。圖5-2 超市信息管理系統(tǒng)頁(yè)面描述:小型超市信息管理系統(tǒng)中主要頁(yè)面包括GoodsManage.jsp,Goods.jsp,selectSC.jsp等。主要實(shí)現(xiàn)商品信息展示,購(gòu)物車(chē)模塊結(jié)果。Manage.jsp為框架網(wǎng)頁(yè),實(shí)現(xiàn)后臺(tái)管理的主頁(yè)面布局。5.2關(guān)鍵模塊詳細(xì)設(shè)計(jì)此處為小型超市信息管理系統(tǒng)關(guān)鍵模塊的詳細(xì)描述,并附上相關(guān)代碼以及截圖。在代碼的關(guān)鍵處加以說(shuō)明,以方便讀者閱讀。5.2.1登錄模塊登錄流程如圖5-3。管理員在登錄表單填寫(xiě)用戶名,密

36、碼,將表單與Flag標(biāo)志提交至Servlet。系統(tǒng)根據(jù)XML文件的配置,調(diào)用相關(guān)的Servlet類(lèi)(MemberController.java)。Servlet根據(jù)Flag的值,調(diào)用相應(yīng)的函數(shù),查詢數(shù)據(jù)庫(kù)表(member)并進(jìn)行判斷,如果用戶名與密碼匹配,則跳轉(zhuǎn)到管理頁(yè)面(manage.jsp),否則,輸出登錄失敗頁(yè)面。圖5-3 登錄模塊流程圖相關(guān)代碼如下:Login.jsp: 請(qǐng)輸入您的姓名:請(qǐng)輸入您的密碼: 說(shuō)明:登錄表單中,將姓名與密碼字段 “name”屬性分別設(shè)置為“Member_Name”,“Member_Password”,向后臺(tái)進(jìn)行參數(shù)傳遞。點(diǎn)擊submit按鈕,按照a

37、ction中的路徑調(diào)用方法,傳遞方法的類(lèi)型為“post”,將提交至servlet的dopost方法。MemberController.java:public void login(HttpServletRequest req,HttpServletResponse response)tryToChinese to=new ToChinese();Member user=new Member();MemberDAO memberdao=new MemberDAO();user.setName(req.getParameter(Member_Name);user.setPassword(req.g

38、etParameter(Member_Password);Member member=memberdao.login(user);if(member=null)PrintWriter out=response.getWriter();out.println();out.println( );out.println( );out.println(login fail+);out.println( );out.println();out.flush();out.close();elsereq.getSession().setAttribute(Member, member);RequestDisp

39、atcher rd=req.getRequestDispatcher(manage.jsp);rd.forward(req, response);catch(Exception e)e.printStackTrace();說(shuō)明:login方法,接受前臺(tái)頁(yè)面?zhèn)鬟f過(guò)來(lái)的用戶名與密碼,并利用編碼轉(zhuǎn)換類(lèi)將用戶名轉(zhuǎn)換為UTF-8編碼類(lèi)型,解決了亂碼問(wèn)題。實(shí)例化一個(gè)MemberDao類(lèi),調(diào)用其Login方法,返回實(shí)體類(lèi)Member。如果返回值為空,則輸出登錄失敗頁(yè)面。否則,跳轉(zhuǎn)至管理員管理頁(yè)面manage.jsp。MemberDAO.java Login.()public Member login(Mem

40、ber member)throws SQLExceptionString sql=select * from member where MemberName=? and MemberPassword=?;PreparedStatement psmt=conn.prepareStatement(sql);psmt.setString(1, member.getName();psmt.setString(2, member.getPassword();ResultSet rs=psmt.executeQuery();Member member1=new Member();if(rs.next()m

41、ember1.setID(rs.getInt(MemberID);member1.setName(rs.getString(MemberName);member1.setPassword(rs.getString(MemberPassword);member1.setSex(rs.getInt(MemberSex);member1.setAge(rs.getInt(MemberAge);rs.close();return member1;elsereturn null;說(shuō)明:Login方法對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。首先連接至數(shù)據(jù)庫(kù),利用前臺(tái)傳來(lái)的用戶名,密碼字段對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,以結(jié)果集形式進(jìn)行返回。

42、并實(shí)例化member類(lèi),將結(jié)果集中的數(shù)據(jù)輸出,返回Member類(lèi)型。相關(guān)界面設(shè)計(jì)見(jiàn)圖5-4,圖5-5,圖5-6。圖5-4 超市信息管理系統(tǒng)歡迎界面圖5-5 超市管理員登陸界面圖5-6 登陸失敗頁(yè)面5.2.2商品信息查看模塊在Left.jsp 中點(diǎn)擊“商品信息管理頁(yè)面”,鏈接為”Goods.do?flag=1” 。系統(tǒng)根據(jù)XML配置文件,調(diào)用GoodsController.java 。接受到Flag=1 ,調(diào)用FindAll()方法,查詢MysqL數(shù)據(jù)庫(kù)中g(shù)oods表,查詢所有商品信息,返回一個(gè)List 集合,名為list。利用req.setAttribute(goods, list) 將集合存

43、入request范圍內(nèi),然后跳轉(zhuǎn)至商品信息展示頁(yè)面(Goodsmanage.jsp)。在商品信息展示頁(yè)面,創(chuàng)建一個(gè)Table.列名分別為商品各項(xiàng)屬性名。新建一個(gè)List list.。將request 范圍內(nèi)的“goods”接收并進(jìn)行強(qiáng)制類(lèi)型轉(zhuǎn)換。循環(huán)list,將商品輸出。在每一行商品的后面,加上“刪除”“更新”兩個(gè)鏈接,分別為:“Goods.do?flag=2&id=”,“Goods.do?flag=5&id=”。點(diǎn)擊鏈接,可以調(diào)用GoodsController.java 中的相應(yīng)函數(shù),傳遞參數(shù)為ID,進(jìn)行刪除或更新的操作。相關(guān)流程見(jiàn)圖5-7。圖5-7 商品信息查看模塊流程圖相關(guān)代碼如下:Le

44、ft.jsp:歡迎頁(yè)面商品信息管理頁(yè)面進(jìn)貨單管理頁(yè)面管理員信息管理頁(yè)面交易信息查看頁(yè)面退出GoodsManage.jsp:商品ID商品名商品類(lèi)型商品售價(jià)商品進(jìn)價(jià)商品數(shù)量商品進(jìn)貨時(shí)間商品保質(zhì)期(天)生產(chǎn)廠家%List list=new ArrayList();list=(List)request.getAttribute(goods);for(int i=0;i a href=Goods.do?flag=2&id=刪除 a href=Goods.do?flag=5&id=更新 添加新商品GoodController.java.FindAll():public void findAll(HttpS

45、ervletRequest req,HttpServletResponse response)tryListlist=gooddao.selectGoods();req.setAttribute(goods, list);RequestDispatcher rd=req.getRequestDispatcher(GoodsManage.jsp);rd.forward(req, response);catch(Exception e)e.printStackTrace();說(shuō)明:FindAll方法調(diào)用gooddao的selectGoods方法,將所有商品信息讀出,以集合的形式存入變量“goods

46、”中,在中進(jìn)行調(diào)用。GoodsDAO.selectGoods:public List selectGoods()throws SQLExceptionResultSet rs=null;tryConnection conn;conn=con.getConnection();String sql=select * from goods ;Statement psmt=conn.createStatement();rs=psmt.executeQuery(sql);List list=new ArrayList();while(rs.next()Goods good=new Goods();goo

47、d.setID(rs.getInt(GoodsID);good.setName(rs.getString(GoodsName);good.setType(rs.getInt(GoodsType);good.setPrice(rs.getInt(GoodsPrice);good.setPurchasePrice(rs.getInt(GoodsPurchasePrice);good.setAmount(rs.getInt(GoodsAmount);good.setGetTime(rs.getString(GoodsGetTime);good.setMaintainTime(rs.getInt(Go

48、odsMaintainTime);good.setFactory(rs.getString(GoodsFactory);list.add(good);return list; catch(Exception e)e.printStackTrace(); return null;相關(guān)頁(yè)面設(shè)計(jì)見(jiàn)圖5-8,5-9,5-10。圖5-8 商品信息查看頁(yè)面圖5-9 商品信息添加頁(yè)面圖5-10 商品信息更新頁(yè)面5.3.3購(gòu)物車(chē)模塊用戶在商品瀏覽頁(yè)面查看商品。如果喜歡某件商品,點(diǎn)擊每行商品后的“添加至購(gòu)物車(chē)”鏈接,調(diào)用“Cart.do?flag=1&id=?”ID為要添加的商品的ID。系統(tǒng)根據(jù)XML配置文件,

49、調(diào)用CartController 中的add方法,代碼如下:public void add(int id,HttpServletRequest request, HttpServletResponse response)try request.getSession().setAttribute(Amounterror, );GoodsDAO gd=new GoodsDAO();int exitNum=0;List list=(List)request.getSession().getAttribute(ShoppingCart);for(int i=0;ilist.size();i+)if(l

50、ist.get(i).getID()=id)exitNum=list.get(i).getAmount(); list.remove(list.get(i);Shoppingcart sc=new Shoppingcart();Goods g=gd.FindGoodsbyID(id);sc.setID(g.getID(); sc.setName(g.getName();sc.setAmount(exitNum+1);sc.setPrice(g.getPrice();list.add(sc);request.getSession().setAttribute(ShoppingCart, list

51、);RequestDispatcher rd=request.getRequestDispatcher(addcartsuccess.jsp); rd.forward(request, response);catch(Exception e) e.printStackTrace(); 說(shuō)明:其中在session范圍內(nèi)設(shè)置了“AmountError”變量,用于校驗(yàn)購(gòu)物車(chē)中商品數(shù)量與現(xiàn)在超市中商品余量的關(guān)系。先從“ShoppingCart”變量中提取商品,并保留商品數(shù)量,刪除此商品。然后重新實(shí)例化一個(gè)Shoppingcart ,將顧客選中的商品信息存入list中重新存入session中。然后頁(yè)面跳

52、轉(zhuǎn)到addcartsuccess.jsp。此時(shí)購(gòu)物車(chē)session中已存放了顧客選中的商品信息,默認(rèn)商品數(shù)量為1,點(diǎn)擊查看購(gòu)物車(chē)鏈接“selectSC.jsp”。代碼如下: %Listlist=new ArrayList(); list=(List)request.getSession().getAttribute(ShoppingCart); % 您未購(gòu)買(mǎi)任何商品。 前去購(gòu)物 您購(gòu)買(mǎi)的商品如下: 離開(kāi)超市 商品名稱 商品單價(jià) 商品數(shù)量 價(jià)格小計(jì) %for(int i=0;i input type=text value= name=num a href=Cart.do?flag=3&id=刪除商品 %float allcost=0; for(Shoppingcart sc :list)allcost+=sc.getAmount()*sc.

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!