基于Javaweb開發(fā)的網(wǎng)上商城系統(tǒng)_第1頁
基于Javaweb開發(fā)的網(wǎng)上商城系統(tǒng)_第2頁
基于Javaweb開發(fā)的網(wǎng)上商城系統(tǒng)_第3頁
基于Javaweb開發(fā)的網(wǎng)上商城系統(tǒng)_第4頁
基于Javaweb開發(fā)的網(wǎng)上商城系統(tǒng)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 屆 別 學(xué) 號 學(xué)校名稱 畢業(yè)設(shè)計(論文) 姓 名 系 別 、專 業(yè) 導(dǎo)師姓名、職稱 完 成 時 間 2 網(wǎng)上商城系統(tǒng)摘 要本文的主要研究對象是網(wǎng)上商城系統(tǒng),研究網(wǎng)上商城一般的業(yè)務(wù)流程,還有網(wǎng)上商城的結(jié)構(gòu)和模塊,各個模塊的功能等等。整個論文從如何來分析一個網(wǎng)上商城系統(tǒng)的業(yè)務(wù)流程和它的結(jié)構(gòu)以及模塊,再到到對開發(fā)工具的選擇,以及對前面分析出來的結(jié)果進(jìn)行初步的設(shè)計(這里我設(shè)計的是使用Java的web開發(fā)技術(shù)來實現(xiàn)這個網(wǎng)上商城系統(tǒng)),對網(wǎng)上商城系統(tǒng)分析和設(shè)計完成之后,就進(jìn)入到實際的代碼編寫階段,在這個階段就可能對前面的設(shè)計進(jìn)行一定的修改或是完善。在開發(fā)階段,我將采用的是螺旋遞增式的開發(fā),每次只完成一

2、部分功能,然后就立即對這些功能進(jìn)行測試,接著進(jìn)入下一個開發(fā)階段,然后繼續(xù)測試,直到所有的功能全部實現(xiàn)后,再對整個系統(tǒng)進(jìn)行一個完整的測試,看其是否達(dá)到了先前的設(shè)計要求。綜上所述,本文討論的就是如何使用Java的web開發(fā)技術(shù)來完整的實現(xiàn)一個網(wǎng)上商城系統(tǒng)的主要功能。關(guān)鍵詞 商城設(shè)計與開發(fā) ; JAVA ; JAVA WEB AbstractTherefore, this paper studies the main object is online shopping mall, online mall general business processes, and online store str

3、ucture and module, the function of each module. The article, from how to analyze online mall business process and the structure of the system and modules, and then in the choice of development tools, and the results of the front, preliminary design (I design web pages, use Java development technolog

4、y to realize the online mall), online mall of system analysis and design into the actual code stage complete, at this stage, may in front of the design basis of certain amendments or perfect. During the development phase, I will use the spiral incremental development, a stage of the function as long

5、 as finished, then immediately testing these functions, and then into the next stage of development, and then continue to test, until all test function, and finally to the overall test the whole system to see if it comply with the design requirements.All in all, this paper has discussed how to use J

6、ava Web development technology to complete a online mall system.Keywords:BUY GOODS JAVA WEB SHOPPING1-目 錄第1章 緒論1 1.1 課題背景.11.2 目的和意義11.3 論文研究內(nèi)容21.4 什么是網(wǎng)上商城1.5 網(wǎng)上商城的分類第2章 網(wǎng)上商城系統(tǒng)的需求分析42.1 網(wǎng)上商城業(yè)務(wù)流程分析42.1.1 作為一名消費者的使用流程42.1.2 作為一名商城管理員的操作流程52.2 網(wǎng)上商城模塊分析52.2.1 用戶模塊62.2.2 管理員模塊62.3 本章小結(jié)7第3章 網(wǎng)上商城系統(tǒng)的設(shè)計與實現(xiàn)83

7、.1 開發(fā)語言和工具介紹83.1.1 開發(fā)語言83.1.2 數(shù)據(jù)庫93.1.3 服務(wù)器93.1.4 開發(fā)工具103.2 業(yè)務(wù)邏輯設(shè)計103.2.1 共用類和相應(yīng)方法103.2.2 用戶實體類和相應(yīng)方法113.2.3 管理員實體類和相應(yīng)方法3.2.4 商品類別類和相應(yīng)方法143.2.5 商品類及其相應(yīng)管理方法153.2.6 購物車類及其方法163.2.7 訂單類及其方法173.3 數(shù)據(jù)庫設(shè)計183.3.1 數(shù)據(jù)庫設(shè)計簡要介紹183.3.2 數(shù)據(jù)庫具體設(shè)計193.4 本章小結(jié)21第4章 系統(tǒng)的測試和分析224.1 Version 1224.2 Version 2244.3 Version 3264

8、.4 Version 4284.5 Version 5304.6 Version 6324.7 Version 7344.8 Version 8364.9 Version 9384.10 Version 10 404.11 本章小結(jié)40結(jié) 論41致 謝42參考文獻(xiàn)43附 錄44- 3 -第一章 緒論1.1選題背景 隨著計算機(jī)技術(shù)的發(fā)展和網(wǎng)絡(luò)人口的增加,網(wǎng)絡(luò)世界也越來越廣博,越來越豐富,網(wǎng)上商城已經(jīng)成為網(wǎng)上購物的一股潮流?;ヂ?lián)網(wǎng)已日益成為收集提供信息的最佳渠道并逐步進(jìn)入傳統(tǒng)的流通流域,互聯(lián)網(wǎng)的跨地域性和可交互性使其在與傳統(tǒng)媒體行業(yè)和傳統(tǒng)貿(mào)易行業(yè)的競爭中是具有不可抗拒的優(yōu)勢。人們對于互聯(lián)網(wǎng)技術(shù)的要

9、求已不單單是瀏覽一下網(wǎng)站網(wǎng)頁,收發(fā)電子郵件,日益忙碌的人們開始追求足不出戶就能買到心儀的商品,是越來越多的上網(wǎng)愛好者實現(xiàn)購物的一種方式。對于企業(yè)來講,無論是企業(yè)之間(B to B),還是企業(yè)和客戶之間(B to C)的交易,如果能夠?qū)崿F(xiàn)網(wǎng)上交易將大大提高交易速度節(jié)約成本。但是對網(wǎng)絡(luò)的及時、一對一、跨時間、 跨空間等特性,并沒有充分加以利用。在這種形勢下,傳統(tǒng)的依靠管理人員人工工作傳遞信息和數(shù)據(jù)的管理方式就無法滿足企業(yè)日益增長的業(yè)務(wù)需求了。因而開發(fā)了這樣一個具有前后臺的網(wǎng)上商城系統(tǒng),以滿足購物者和企業(yè)的需求。1.2選題的目的和意義對于網(wǎng)上商城來說,我想每個人都不陌生,即使你沒有親自在網(wǎng)上買過東西

10、也一定見過、聽說過網(wǎng)上購物這種方式。網(wǎng)絡(luò)購物作為一種新的購物形式已經(jīng)被廣大群眾所接受,尤其是年輕群體,他們特別熱衷于網(wǎng)購。網(wǎng)購最大的優(yōu)勢就是東西要比現(xiàn)實中商場里的商品便宜,而且一般都是送貨上門,因為網(wǎng)購一般都是采取快遞送貨方式,直接送到你家樓下或者公司里,因此網(wǎng)絡(luò)購物的第二大優(yōu)勢就是其便利性,用戶只要坐在電腦前,點點鼠標(biāo)就可以買東西了。當(dāng)然網(wǎng)購也有它的缺點,比如無法見到實物,只能通過商家介紹的文字和圖片來了解商品,再比如買衣服無法試穿,而且這也為不良商家提供了忽悠消費者的方法,他們會盡力美化自己的商品來誘惑消費者買單,而消費者收到商品后才發(fā)現(xiàn)和想象中的差異很大,而商家又以各種各樣的理由推脫,而

11、且由于采用網(wǎng)上交易,所以會存在安全問題。但是這些都不能擋住網(wǎng)購的魅力,網(wǎng)上購物現(xiàn)在正變得越來越流行,市場份額也變得越來越大。因此這次畢業(yè)設(shè)計題目就以目前現(xiàn)有的網(wǎng)上商城系統(tǒng)為研究對象,例如淘寶和當(dāng)當(dāng),這里主要研究后者的形式,也就是商城自己經(jīng)營的方式,研究一般的網(wǎng)上商城的業(yè)務(wù)流程,猜測其各個功能模塊及其組合、連接方式,并分析其具體的實現(xiàn)方式,最后使用Java加web服務(wù)器和數(shù)據(jù)庫完成一個網(wǎng)上商城系統(tǒng)的主要功能模塊。通過這樣一個畢業(yè)設(shè)計,可以提高自己Java編程的水準(zhǔn),也練習(xí)了怎樣構(gòu)建一個完整的系統(tǒng),從系統(tǒng)的需求分析到設(shè)計,直至編碼、測試并運行,熟悉并掌握一個完整的Web開發(fā)流程,為今后工作打下基礎(chǔ)

12、。1.3論文研究內(nèi)容網(wǎng)上商城是一個基于Internet的應(yīng)用,屬于B/S架構(gòu),前端就是一個客戶瀏覽器,客戶需要通過瀏覽器來訪問服務(wù)器,因此,本文主要研究的就是一個網(wǎng)上商城系統(tǒng)(商城自負(fù)經(jīng)營的類型)的業(yè)務(wù)流程及其實現(xiàn)方式。首先,需要站在使用者的角度去思考你究竟會怎么使用這個系統(tǒng),而一個網(wǎng)上商城的使用者一般又有兩類,一類是普通消費者,而另一類則是商城的管理員,因此我就需要思考這兩類人都會怎么來使用這個系統(tǒng),這樣就能分析出網(wǎng)上商城系統(tǒng)的業(yè)務(wù)流程。而實現(xiàn)這個業(yè)務(wù)流程可以采用很多種不同的方法,很明顯,網(wǎng)上商城系統(tǒng)是一個基于Internet的應(yīng)用,因此就需要使用到Web開發(fā)的方法,目前Web開發(fā)的方法有很

13、多,流行的有Java和.Net,這里我選擇了Java,因此我就需要研究如果采用Java作為編程語言,我應(yīng)當(dāng)如何來實現(xiàn)這個系統(tǒng),這個系統(tǒng)應(yīng)該劃分為多少個模塊,每個模塊的功能又是什么,他們之間如何組合到一起,這也就是系統(tǒng)的設(shè)計。第二章 網(wǎng)上商城系統(tǒng)的需求分析1.1 網(wǎng)上商城業(yè)務(wù)流程分析開發(fā)一個項目,不管你采用什么實現(xiàn)方式,其實都是在完成其業(yè)務(wù)流程,因此,將一個系統(tǒng)的業(yè)務(wù)流程分析清楚,將為后面的開發(fā)提供極大的便利。由于本文選擇了B2C(Business To Customer,商家對顧客直銷)模式,所以之后的分析或討論均是針對此種模式。如何對一個系統(tǒng)進(jìn)行分析有很多的方法,這里我采用了站在具體的使用者

14、的角度來考慮這個網(wǎng)上商城系統(tǒng)的功能和結(jié)構(gòu),先是粗略的分析一下使用的流程,在這個過程中就能夠發(fā)現(xiàn)一些必須的基礎(chǔ)的類。1.1.1 作為一名消費者的使用流程假如一個消費者第一次來到一個網(wǎng)上商城,他首先一般會先瀏覽瀏覽該商城的首頁以及首頁上所列的各種商品,如果你這個網(wǎng)站的首頁設(shè)計得很精細(xì)很吸引人的話,消費者才會有興趣進(jìn)行下一部探索,看看你們這個商城有什么好的商品。因此,目前的網(wǎng)上商城設(shè)計者大多會在首頁花費很大的功夫,比如在首頁就展示商品什么的,一次來吸引客戶的眼球。如此一來,用戶也不需要登錄就可以查看。進(jìn)而如果他對這個商品感興趣,那他就會點擊購買這個按鈕,如果客戶是第一次來此商城購買商品,那么系統(tǒng)就會

15、自動提醒客戶是否注冊一個新賬號,注冊之后才能進(jìn)行下一步操作。當(dāng)然了,消費者進(jìn)行注冊之后系統(tǒng)就該為消費者提供一個登錄功能,以方便消費者登錄進(jìn)而進(jìn)行購買商品的操作以及一些相關(guān)的操作。該系統(tǒng)在消費者登錄成功之后會在頁面上顯示該消費者的用戶名以及跟消費者相關(guān)的一些操作功能。這些操作功能包括修改用戶的密碼,查看自己的個人信息,修改自己的相關(guān)的個人信息。 當(dāng)然用戶登錄之后也可以查看商品,最重要的,登錄用戶可以選擇商品放入自己的購物車并下單結(jié)賬。還可以查看自己所下的訂單。 根據(jù)上面的信息分析,我們大致可以分析出來有這么幾個實體類來支撐這些操作,首先,注冊之后就會產(chǎn)生一個用戶,接著要用此用戶來支持登錄功能,這

16、樣一來,所有的用戶集合成了一個用戶實體類,這個實體類包括用戶名,用戶密碼,聯(lián)系方式,用戶地址等等。接著,在用戶注冊登錄之后,商城就要向用戶展示相關(guān)的商品,那么,所有的商品又集合成了一個商品實體類,這個實體類包括一些商品的相關(guān)信息,不如商品名,商品價格,商品生產(chǎn)日期等。再者,用戶如果對某些商品感興趣了,就要把喜歡的商品放到購物車?yán)?,那么又一個購物車實體類產(chǎn)生了,這個實體類包括商品名稱,商品價格,把此商品放入購物車的用戶名稱等等;最后會員買完東西后給商城下了訂單,那么這個訂單也需要包裝成一個實體類,上面需要記錄一些信息,最主要的信息應(yīng)當(dāng)有:誰下了這個訂單?買了什么東西?多少錢?其它的諸如什么時候下

17、的也可以記錄。1.1.2 作為一名商城管理員的使用流程管理員首先也要登錄才能操作所有功能,商城管理員應(yīng)當(dāng)能管理商城注冊的會員:可以查看商城的已注冊會員,并且對已注冊的會員信息進(jìn)行修改,而且也可以刪除相關(guān)的會員。接著,管理員還應(yīng)該有如下的一些功能。首先,添加父類商品,比如說“書籍”,再者,就是可以添加子類商品,比如說“計算機(jī)”,最后,管理員應(yīng)該也可以添加子類下的相關(guān)的一些商品,比如說“30天精通JAVA” 。當(dāng)然,管理員應(yīng)該也可以修改自己的密碼。從管理員的操作,我們也可以得到這么幾個實體類。第一,管理員,既然有管理員那么就必須有一個類來記錄這些東西,對于該系統(tǒng)需要說明一點的就是:在我開發(fā)的這個系

18、統(tǒng)中,由于本人的水平只是有限,為了降低該項目的復(fù)雜度,所以本人把管理員和會員都放在同一個實體類中去了,在登錄的時候把管理員的名稱固定到代碼中去了,即:admin,用戶類這個實體類中,admin這個用戶是不能刪除的,是永久保存在此實體類中的,只要以這個名稱登錄,那么頁面就會跳轉(zhuǎn)到管理員的操作頁面中去;第二,這里提到了父類別,那么這個也應(yīng)當(dāng)包裝成一個類,而且這個類應(yīng)當(dāng)和子類別有一定的關(guān)聯(lián)。第三,這里也提到了子類別,那么子類別也應(yīng)該是個實體類,這個類和商品類也有一定得關(guān)聯(lián);第三,最底層的就是商品這個類了,所有商品集合在一個構(gòu)成了一個商品實體類,商品類別是屬于某個子類別中的一種。因此,從前面兩個站在不

19、同角度來分析使用流程來看,我從中提取出了一些個名詞,這些個名詞也就成為了一些基礎(chǔ)的實體類,目前分析的出來的有,用戶類、商品父類別類、商品子類別類、商品類、購物車類、訂單類、。顯然,這些個類在此商城項目中是比較具體的,是可以很明顯看出的,但是還有一些類是比較“抽象”的,是不能這樣直接的通過找名詞來得出來,但是可以分析這個過程,可以得出這些類確實要存在,因而來將其推算出來。商城有很多數(shù)據(jù)是要存到數(shù)據(jù)庫的,在這里,我把一些與數(shù)據(jù)庫打交道的通用操作封裝成為一個JDBC的類。另外,對于商城頁面中涉及到需要分頁的,我寫了一個通用的分頁實體類,里面包括六個相關(guān)的屬性。當(dāng)然這肯定不是全部,隨著分析設(shè)計的深入,

20、還會有一些類添加進(jìn)來,就算進(jìn)入到實際開發(fā)階段,還有可能突然覺得需要再加入某個類。1.2 網(wǎng)上商城模塊分析1.2.1 用戶模塊分析用戶模塊是為商城的前臺展示所設(shè)計的,用戶模塊又可以大致劃分為一下子模塊:1 用戶注冊模塊2 用戶登錄模塊3 用戶信息修改模塊4 修改用戶密碼模塊5 商品展示模塊6 購物車模塊7 查看以往訂單模塊用戶注冊模塊負(fù)責(zé)新會員注冊,并將其持久化,也就是將新注冊的會員的信息寫入數(shù)據(jù)庫。登錄模塊負(fù)責(zé)驗證會員的登錄,看看有沒有這個用戶,密碼是否正確等,這種操作通常都是從數(shù)據(jù)庫查詢。用戶信息修改模塊可以讓用戶修改自己的個人信息,這就涉及到了數(shù)據(jù)庫的修改。修改用戶密碼模塊讓用戶修改自己的

21、密碼。商品展示模塊應(yīng)當(dāng)是從數(shù)據(jù)庫中將商品拿出來,然后再以某種方式顯示的網(wǎng)頁上。購物車模塊就是收集和記錄用戶所購買的商品,購物車最后要么被直接銷毀,要么會轉(zhuǎn)化為訂單,然后被銷毀。查看以往訂單模塊使用戶能查看自己所下的訂單。因此數(shù)據(jù)庫的操作始終貫穿在整個系統(tǒng)里面,幾乎所有的地方都涉及到了數(shù)據(jù)庫的操作。1.2.2 管理員模塊分析管理員模塊是為管理員管理商城事物所設(shè)計的,管理員模塊又可以初步劃分為以下子模塊:1 會員管理模塊2 商品類別管理模塊3 商品管理模塊4 訂單處理模塊5 管理員的自我管理很明顯,會員管理模塊是用來管理商城的注冊會員的,應(yīng)當(dāng)可以查看會員、修改會員信息、刪除會員,這就是對數(shù)據(jù)庫的增

22、刪改查的體現(xiàn)。商品類別管理模塊用來管理商品類別,可以查看商品類別,添加商品類別,修改商品類別和刪除商品類別。商品管理模塊用來管理商城的商品,可以查看商品,添加商品,修改商品和刪除商品。訂單處理模塊用來管理會員所下訂單,可以查看會員所下的訂單,并處理這些訂單。1.3 本章小結(jié)本章主要從商城的使用者角度,也就是普通用戶和商城管理員兩方面分別分析了這些用戶對商城一般的操作流程。然后根據(jù)這些流程分析出了一些直接的類,也就是一些基礎(chǔ)的實體類,并跟據(jù)這些大致的流程分析出兩個大模塊,用戶模塊和管理員模塊,兩個大模塊又可以進(jìn)一步細(xì)分為一個個小模塊。并大致分析了這些模塊的功能。第三章 網(wǎng)上商城系統(tǒng)的設(shè)計與實現(xiàn)本

23、章是網(wǎng)上商城系統(tǒng)的具體設(shè)計,包括開發(fā)環(huán)境的選擇及介紹,各個功能模塊的具體設(shè)計以及一部分實現(xiàn)。1.4 開發(fā)語言和工具介紹這里介紹我選擇的開發(fā)語言,開發(fā)工具等。1.4.1 開發(fā)語言介紹1Java簡介:Java是一種簡單的,面向?qū)ο蟮?,分布式的,解釋型的,健壯安全的,結(jié)構(gòu)中立的,可移植的,性能優(yōu)異、多線程的動態(tài)語言。Java平臺由Java虛擬機(jī)(Java Virtual Machine)和Java 應(yīng)用編程接口(Application Programming Interface、簡稱API)構(gòu)成2。Java 應(yīng)用編程接口為Java應(yīng)用提供了一個獨立于操作系統(tǒng)的標(biāo)準(zhǔn)接口,可分為基本部分和擴(kuò)展部分。在硬

24、件或操作系統(tǒng)平臺上安裝一個Java平臺之后,Java應(yīng)用程序就可運行?,F(xiàn)在Java平臺已經(jīng)嵌入了幾乎所有的操作系統(tǒng)。這樣Java程序可以只編譯一次,就可以在各種系統(tǒng)中運行。 2HTML簡介:HTML是Hypertext Markup Language的縮寫,即超文本標(biāo)記語言。它是用于創(chuàng)建可從一個平臺移植到另一平臺的超文本文檔的一種簡單標(biāo)記語言,經(jīng)常用來創(chuàng)建Web頁面。HTML文件是帶有格式標(biāo)識符和超文本鏈接的內(nèi)嵌代碼的ASCII 文本文件。HTML是制作網(wǎng)頁的基礎(chǔ),3JavaScript簡介:JavaScript是由Netscapt與SUN公司合作開發(fā)的產(chǎn)品。JavaScript是一種跨平臺的

25、開放式腳本描述語言,它是Java和Livescript的衍生物,它生成的應(yīng)用程序能夠?qū)⒖蛻艉头?wù)器上的對象和資源聯(lián)系在一起,通過Internet動態(tài)的表示信息并與用戶進(jìn)行交互。JavaScript是用來改變網(wǎng)頁外觀的編輯命令和指令,它對網(wǎng)頁設(shè)計有著重要的幫助。4AJAX簡介:AJAX即“Asynchronous JavaScript and XML”(異步JavaScript和XML),AJAX并非縮寫詞,而是由Jesse James Gaiiett創(chuàng)造的名詞,是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。5JSP簡介:JSP(Java Server Pages)是由Sun Microsystem

26、s公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)7。該技術(shù)為創(chuàng)建顯示動態(tài)生成內(nèi)容的Web頁面提供了一個簡捷而快速的方法。JSP技術(shù)的設(shè)計目的是使得構(gòu)造基于Web的應(yīng)用程序更加容易和快捷,而這些應(yīng)用程序能夠與各種Web服務(wù)器,應(yīng)用服務(wù)器,瀏覽器和開發(fā)工具共同工作。 JSP規(guī)范是Web服務(wù)器、應(yīng)用服務(wù)器、交易系統(tǒng)、以及開發(fā)工具供應(yīng)商間廣泛合作的結(jié)果。1.4.2 數(shù)據(jù)庫介紹MySQL 是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器,它是一個客戶機(jī)/服務(wù)器結(jié)構(gòu)的實現(xiàn)。MySQL是現(xiàn)在流行的關(guān)系數(shù)據(jù)庫中其中的一種,相比其它的數(shù)據(jù)庫管理系統(tǒng)(DBMS)來說,MySQL具有小巧、功能齊全、查詢迅捷等優(yōu)點

27、。MySQL 主要目標(biāo)是快速、健壯和易用。關(guān)鍵的是它是免費的,可以在Internet上免費下載到,并可免費使用。MySQL 對于一般中小型,甚至大型應(yīng)用都能夠勝任。1.4.3 服務(wù)器介紹Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目10,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。因為Tomcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。1.4.4 開發(fā)工具介紹在開發(fā)過程中,我主要用到了myeclipse1

28、MyEclipse介紹:MyEclipse,是一個十分優(yōu)秀的用于開發(fā)Java, J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對各種開源產(chǎn)品的支持十分不錯。1.5 業(yè)務(wù)邏輯設(shè)計要實現(xiàn)網(wǎng)上商城的業(yè)務(wù)邏輯,必須有相應(yīng)的實體類和其相應(yīng)的方法,這里就大致將其設(shè)計出來。1.5.1 基礎(chǔ)共用類和相應(yīng)方法整個系統(tǒng)有一些通用的類和方法,比如連接數(shù)據(jù)庫等。 DataBase類方法:1 public static Connection getConn() 取得用于連接數(shù)據(jù)庫的Connection。2 public static void close(Con

29、nection conn) 關(guān)閉Connection。3 public static void close(Statement stmt) 關(guān)閉Statement。4 public static void close(ResultSet rs) 關(guān)閉ResultSet。 PoolDataSource類private static String username;private static String password;private static String url ;private static String className;private static int ma

30、xActive;private static int minActive;private static int curActive;private static Properties prop = new Properties();private static int curActivegetters()和setters()方法,用來得到和設(shè)置成員變量的值,因此不詳細(xì)列出。 Page類Page包裝了分頁信息。成員變量: 1、private Integer pageNo;/當(dāng)前是第幾頁 2、private Integer pageSize;/當(dāng)前總共多少頁 3、private Lo

31、ng totalPage ;/總共多少頁 4、private String url;/頁面地址(jsp) 5、private String method ;/相關(guān)方法名 6、private String index ;/用來作標(biāo)記的方法:getters()和setters()方法,用來得到和設(shè)置成員變量的值,因此不詳細(xì)列出。1.5.2 用戶實體類以及相關(guān)的類和相應(yīng)方法為了實現(xiàn)商城會員的注冊、登錄、查看會員自己的信息、修改會員的個人信息、修改個人密碼和查看所下的訂單,應(yīng)當(dāng)有一個用戶實體類和其相應(yīng)的方法,在這里設(shè)計出兩個類User類。User包裝了用戶的信息,并提供相應(yīng)的get和set方法;1.5

32、.2.1 User類成員變量:1 private int id 用戶id。 1、 private Integer userId ;/User的id 2、 private String username ;/用戶名 3、 private String password ;/用戶密碼 4、 private String email ;/用戶郵箱 5、 private String address ;/用戶地址 6、 private String phone ;/用戶聯(lián)系方式方法:getters()和setters()方法,用來得到和設(shè)置成員變量的值,因此不詳細(xì)列出。 IUserDAO

33、接口 1、 User findUserByExample(User user) ;/根據(jù)一個user找出user 2、 void save(User user) ;/添加一個user 3、 List findAllUser() ;/查找出所有的會員 4、 User findUserById(Integer userId) ;/根據(jù)某個id查找對應(yīng)的user 5、 void modify(User user) ;/修改相應(yīng)的user 6、 void delete(User user) ;/刪除選中的user 7、 User findUserByName(String username) ;/根據(jù)

34、用戶名稱查找user 8、 List findUserByPage(Page page) ;/根據(jù)頁數(shù)號碼列出用戶 9、 void modifyPasswordByUid(Integer uid) ;/根據(jù)id修改相應(yīng)的用戶密碼 UserDAO類 實現(xiàn)了IUserDAO接口的所有方法,在此不再詳細(xì)列出。 UserService類 成員變量: IUserDAO userDao = new UserDAO() ; 相關(guān)方法: 1、public void save(User user) 2、public List findAllUser() 3、public User f

35、indUserById(Integer userId) 4、public User login(User user) 5、public void modify(User user) 6、public void delete(User user) 7、public User findUserByName(String username) 8、public List findUserByPage(Page page) 9、public void modifyPasswordByUid(Integer uid)1.5.3 商品父類別類和相應(yīng)方法這是一個基礎(chǔ)的類,它是一種樹形結(jié)構(gòu),有根類別,其下又有很

36、多子類別,一個商品子類別類必須屬于某種商品父類別類。 ParentCategory實體類成員變量: 1、private Integer pid ; 2、private String pname ;方法:getters()和setters()方法,用來得到和設(shè)置成員變量的值,因此不詳細(xì)列出。 IParentCategoryDAO接口 List listAll() ;/列出所有的父類別的實例 void addParentCategory(ParentCategory pCategory) ;/添加父類別中的實例 ParentCategoryDAO類 實現(xiàn)了

37、ParentCategoryDAO接口的所有方法,在此不再詳細(xì)列出。 ParentCategoryService類成員變量:IChildCategoryDAO iccDao = new ChildCategoryDAO() ;相關(guān)方法: 1、 public void addChildCategory(ChildCategory cCategory) 2、 public List listAll() 3、 public List findChildCategoryByPid(Integer pid)1.5.4 商品子類別類和相應(yīng)方法 ChildCategory類 這個

38、類與ParentCategory有關(guān)聯(lián) 1、 private Integer cid ;/子類別類的id2、private String cname ;/子類別類的名稱 3、private Integer pid ;/相關(guān)聯(lián)的父類別id IChildCategoryDAO接口 抽象方法: 1、List listAll() ;/列出所有的子類別實例 2、void addChildCategory(ChildCategory cCategory) ;/ 添加子類別實例 3、List findChildCategoryByPid(Integer pid) ; ChildC

39、ategoryDAO類 實現(xiàn)了ChildCategoryDAO接口的所有方法,在此不再詳細(xì)列出。 ChildCategoryService類成員變量: IChildCategoryDAO iccDao = new ChildCategoryDAO() ;方法: 1、public void addChildCategory(ChildCategory cCategory) 2、public List listAll() 3、public List findChildCategoryByPid(Integer Pid)1.5.5 商品類以及相關(guān)類和方法 Goods類

40、1、private Integer gid ;/商品id 2、private String gname ;/商品名稱 3、private Float price ;/商品價格 4、private String description ;/商品相關(guān)描述 5、private Integer cid ;/子類別id 6、private String image ;/商品圖片 IGoodsDAO接口 1、void saveGoods(Goods goods) ;/添加商品 2、List listAllGoods(Page page) ;/列出所有的商品 3、List findGoodsB

41、yCid(Integer cid,Page page) ;/根據(jù)商品id找出相對于的商品 4、void modifyGoodsByGid(Goods goods,Integer gid) ;/根據(jù)商品id修改某商品的信息5、void deleteGoodsByGid(Integer gid) ;/根據(jù)商品id刪除此商品 GoodsDAO類 實現(xiàn)了GoodsDAO接口的所有方法,在此不再詳細(xì)列出。 GoodsService類 成員變量:IGoodsDAO goodsDao = new GoodsDAO() ;方法: 1、public void saveGoods(G

42、oods goods) 2、public List listAllGoods(Page page) 3、public List findGoodsByCid(Integer cid,Page page 4、public void modifyGoodsByGid(Goods goods,Integer gid)5、 public void deleteGoodsByGid(Integer gid)3.2.6 SvImage類 該類主要用于在添加相關(guān)商品時,同時要求附帶商品圖片,此時就需要運用這個類來處理圖片上傳方面的功能了。 SvImage類Servlet,用來實現(xiàn)為商品上傳圖片

43、,用到了apache的commons-fileupload和commons-io組件,這是在Java的Web開發(fā)中最常用的文件上傳組件。上傳的圖片會存放在服務(wù)器的目錄下。3.2.7購物車類及其方法 該類主要用于用戶如果對某件商品感興趣時,就可以按下“放入購物車”這個按鈕,同時,這件商品的相關(guān)信息就會被放到了相應(yīng)的購物車中去了。即用來存放用戶喜歡而即將購買的商品信息的。 Car類 1、private Integer carId ;/購物車id 2、private String gname ;/放入購物車某商品的名稱 3、private Float price ;/放入購物車某商品的價格 4、private Integer userId ;/此購物車屬于那個user的用戶的id ICarDAO接口 1、void saveCar(Car car) ;/用戶決定購買某件商品 2、void deleteCar();/把某件商品從購物車中移出來

溫馨提示

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

最新文檔

評論

0/150

提交評論