網(wǎng)上商城系統(tǒng)畢業(yè)論文_第1頁(yè)
已閱讀1頁(yè),還剩64頁(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)介

1、<p><b>  網(wǎng)上商城系統(tǒng)</b></p><p><b>  摘 要</b></p><p>  伴隨著計(jì)算機(jī)技術(shù)日益廣泛和深入的應(yīng)用,網(wǎng)絡(luò)的概念早已深入人心,網(wǎng)絡(luò)在各行各業(yè)中發(fā)展中占據(jù)了重要位置。商品的買賣已經(jīng)不再局限于普通的商店,網(wǎng)上商店已經(jīng)成為商家展示自己舞臺(tái)的另一舞臺(tái),也為商家?guī)?lái)了更高的利益。</p>

2、<p>  本論文研究的內(nèi)容就是網(wǎng)上商城的具體功能及實(shí)現(xiàn)。實(shí)現(xiàn)了商品查詢、商品管理、商品顯示、購(gòu)物車、訂單管理、用戶管理等功能?;旧蠈?shí)現(xiàn)了網(wǎng)上商城功能和購(gòu)物流程,能夠完成網(wǎng)上商品的交易。其開(kāi)發(fā)主要包括:數(shù)據(jù)庫(kù)的建立,前臺(tái)Web頁(yè)面設(shè)計(jì),后臺(tái)管理。本系統(tǒng)采用Oracle數(shù)據(jù)庫(kù)和Tomcat 6.0 服務(wù)器實(shí)現(xiàn)。</p><p>  關(guān)鍵詞:網(wǎng)上商城、JSP、Oracle數(shù)據(jù)庫(kù)</p>&l

3、t;p>  Online shopping system</p><p><b>  Abstract</b></p><p>  Follow the technology of the computer in the enterprise and deep application day</p><p>  by day, the c

4、oncept internet has been deeply taken up people’s heart, the internet takes</p><p>  an very important part in the development of all trades and professions. The trade of goods has not only limited in normal

5、 shop, the internet has became another stage which company can display themselves, it also bring more yield for company.</p><p>  The contents of this paper studies are online shopping system's function

6、and realizes. Has realized the goods query, the goods management, the goods display, the shopping cart, the order management, the users management and so on. Basically has realized online shopping function and shopping f

7、low, can realize the commodity exchange on the internet. Its developments mainly include database setting-up, web design of the foreground pages and back-stage management. The system realized by Oracle datab</p>&

8、lt;p>  Key word: Online shop, JSP, Oracle database</p><p><b>  目錄</b></p><p><b>  摘 要1</b></p><p>  Abstract2</p><p><b>  目錄3</b

9、></p><p><b>  1. 緒 論5</b></p><p>  1.1 開(kāi)發(fā)背景5</p><p>  1.2 開(kāi)發(fā)目的和意義5</p><p>  1.3 網(wǎng)上商城簡(jiǎn)介5</p><p>  2. 軟件開(kāi)發(fā)環(huán)境7</p><p>  2.

10、1 JSP簡(jiǎn)介7</p><p>  2.2 JavaBean技術(shù)簡(jiǎn)介8</p><p>  2.3 Servlet技術(shù)簡(jiǎn)介9</p><p>  2.4 Oracle數(shù)據(jù)庫(kù)簡(jiǎn)介10</p><p>  2.5 MyEclipse 簡(jiǎn)介10</p><p>  2.6 Tomcat 服務(wù)器介紹11</

11、p><p>  2.7 開(kāi)發(fā)環(huán)境的配置13</p><p>  2.7.1 JDK的安裝與配置13</p><p>  2.7.2 Tomcat的安裝14</p><p>  2.7.3 數(shù)據(jù)庫(kù)后臺(tái)環(huán)境配置15</p><p>  3. 網(wǎng)上商城系統(tǒng)需求分析16</p><p> 

12、 3.1 需求分析16</p><p>  3.2 可行性分析17</p><p>  3.2.1 技術(shù)可行性分析17</p><p>  3.2.2 運(yùn)行可行性分析17</p><p>  3.2.3 經(jīng)濟(jì)可行性分析17</p><p>  3.3運(yùn)行環(huán)境18</p><p&

13、gt;  4. 網(wǎng)上商城系統(tǒng)總體設(shè)計(jì)19</p><p>  4.1 系統(tǒng)的功能模塊19</p><p>  4.1.1 系統(tǒng)前臺(tái)19</p><p>  4.1.2 系統(tǒng)后臺(tái)19</p><p>  4.2 數(shù)據(jù)庫(kù)設(shè)計(jì)20</p><p>  4.2.1 數(shù)據(jù)庫(kù)系統(tǒng)概述20</p><

14、;p>  4.2.2總體結(jié)構(gòu)E-R圖20</p><p>  4.2.3 數(shù)據(jù)庫(kù)表設(shè)計(jì)21</p><p>  4.3 數(shù)據(jù)流程分析22</p><p>  4.4 主要業(yè)務(wù)流程分析23</p><p>  4.4.1 用戶注冊(cè)23</p><p>  4.4.2 用戶登錄24</p>

15、;<p>  4.4.3 網(wǎng)上購(gòu)物25</p><p>  5.網(wǎng)上商城系統(tǒng)詳細(xì)設(shè)計(jì)26</p><p>  5.1 系統(tǒng)主要文件26</p><p>  5.1.1 com.frl.model包26</p><p>  5.1.2com.frl.servlet包26</p><p>  

16、5.1.3前臺(tái)系統(tǒng)27</p><p>  5.1.4后臺(tái)系統(tǒng)27</p><p>  5.2詳細(xì)功能設(shè)計(jì)及實(shí)現(xiàn)27</p><p>  5.2.1 用戶注冊(cè)模塊27</p><p>  5.2.2 用戶登錄模塊28</p><p>  5.2.3 商品顯示模塊30</p><p>

17、;  5.2.4 購(gòu)物車模塊31</p><p>  5.2.5 生成訂單模塊34</p><p>  5.2.6 訂單模塊34</p><p>  5.2.7 管理員登錄模塊36</p><p>  5.2.8 添加商品模塊37</p><p>  5.2.9 用戶管理模塊38</p>&l

18、t;p>  5.2.10 訂單管理模塊38</p><p>  6 系統(tǒng)測(cè)試40</p><p>  6.1 軟件測(cè)試的方法和步驟40</p><p>  6.2 測(cè)試及評(píng)價(jià)41</p><p><b>  總 結(jié)42</b></p><p><b>  參考文獻(xiàn)

19、43</b></p><p><b>  致 謝44</b></p><p><b>  外文原文45</b></p><p><b>  中文翻譯52</b></p><p><b>  附錄56</b></p>&

20、lt;p><b>  1. 緒 論</b></p><p><b>  1.1 開(kāi)發(fā)背景</b></p><p>  隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用的普及,人們的生活水平不斷的提升,傳統(tǒng)的購(gòu)物方式已經(jīng)不能滿足人們對(duì)購(gòu)物的需求,加上商家對(duì)低成本商品銷售的期望,網(wǎng)上商城應(yīng)運(yùn)而生。</p><p>  二十一

21、世紀(jì)是個(gè)網(wǎng)絡(luò)化,信息化得社會(huì),網(wǎng)絡(luò)的快速發(fā)展,信息傳遞的速度加快,使人們足不出戶就可以得到信息。越來(lái)越多的人希望可以不用進(jìn)入擁擠的市場(chǎng)就可以購(gòu)買到自己喜愛(ài)的商品,各商家也希望已最低的價(jià)格出售更多的商品。所以網(wǎng)絡(luò)商城出現(xiàn)了,它避免了人們?yōu)榱速?gòu)買到物美價(jià)廉的商品到處奔波的辛苦,也為商家節(jié)省了店面費(fèi),各種代理費(fèi),物流費(fèi)等等。</p><p>  1.2 開(kāi)發(fā)目的和意義</p><p>  本系

22、統(tǒng)設(shè)計(jì)是為了滿足人們通過(guò)互聯(lián)網(wǎng)就可以足不出戶的查看購(gòu)買到自己喜愛(ài)的商品。改變傳統(tǒng)的交易模式,通過(guò)互聯(lián)網(wǎng)完成商品的交易,提高購(gòu)買效率,方便消費(fèi)者的同時(shí)減輕商家工作負(fù)擔(dān),同時(shí)對(duì)商品交易信息進(jìn)行管理,便于分析,掌控物品的銷售。</p><p>  本設(shè)計(jì)主要涉及程序編程、數(shù)據(jù)庫(kù)設(shè)計(jì)、網(wǎng)絡(luò)等技術(shù),涵蓋諸多知識(shí)點(diǎn),可以有效提高對(duì)所學(xué)知識(shí)綜合運(yùn)用能力和對(duì)問(wèn)題分析解決能力,正確的設(shè)計(jì)思想,獨(dú)立思考,勇于進(jìn)取,探索創(chuàng)新,為今后進(jìn)

23、一步學(xué)習(xí)與工作奠定了良好的基礎(chǔ)。</p><p>  1.3 網(wǎng)上商城簡(jiǎn)介</p><p>  網(wǎng)上商城類似于現(xiàn)實(shí)世界當(dāng)中的商店,差別是利用電子商務(wù)的各種手段,達(dá)成從買到賣的過(guò)程的虛擬商店,網(wǎng)上商城為個(gè)人用戶和企業(yè)用戶提供人性化的全方位服務(wù),為用戶創(chuàng)造親切、輕松和愉悅的購(gòu)物環(huán)境,不斷豐富產(chǎn)品結(jié)構(gòu),最大化地滿足消費(fèi)者日趨多樣的購(gòu)物需求,并憑借更具競(jìng)爭(zhēng)力的價(jià)格和逐漸完善的物流配送體系等各項(xiàng)優(yōu)勢(shì)

24、,贏得市場(chǎng)占有率多年穩(wěn)居行業(yè)首位的驕人成績(jī),也是時(shí)代發(fā)展的趨勢(shì)。</p><p>  網(wǎng)上商城比傳統(tǒng)商城具有更多優(yōu)點(diǎn):</p><p>  1.成本低廉:由于省去了店面費(fèi)用,總體的成本降低很多,所以表現(xiàn)在消費(fèi)品上的價(jià)格也會(huì)相對(duì)傳統(tǒng)店面便宜很多,價(jià)格優(yōu)勢(shì)比較明顯。</p><p>  2.永不關(guān)門(mén):每天24小時(shí),每周7天。都可以進(jìn)行商品的瀏覽與購(gòu)買,工作時(shí)間可以隨時(shí)與

25、客服進(jìn)行交流,解決購(gòu)物中遇到的困難。</p><p>  3.客戶無(wú)限:全球的任何人都可以通過(guò)Internet訪問(wèn)您的商店,不受空間限制。</p><p>  4.環(huán)保交易:書(shū)寫(xiě)電子化,傳遞數(shù)據(jù)化。采用無(wú)紙貿(mào)易。更加環(huán)保。</p><p>  5.無(wú)庫(kù)存壓力:商品可以在消費(fèi)者下單后直接聯(lián)系廠家,從廠家發(fā)貨。 </p><p><b

26、>  2. 軟件開(kāi)發(fā)環(huán)境</b></p><p><b>  2.1 JSP簡(jiǎn)介</b></p><p>  JSP是Sun公司推出的新一代站點(diǎn)開(kāi)發(fā)語(yǔ)言,他完全解決了目前ASP,PHP的一個(gè)通病既腳本級(jí)執(zhí)行(據(jù)說(shuō)PHP4 也已經(jīng)在Zend 的支持下,實(shí)現(xiàn)編譯運(yùn)行).Sun 公司借助自己在Java 上的不凡造詣,

27、將Java 從Java 應(yīng)用程序 和 Java Applet 之外,又有新的碩果,就是Jsp--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能強(qiáng)大的站點(diǎn)程序。</p><p>  JSP具有如下方面的技術(shù)特點(diǎn): </p><p>  1.將內(nèi)容的

28、生成和顯示進(jìn)行分離 </p><p>  使用JSP技術(shù),Web頁(yè)面開(kāi)發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來(lái)設(shè)計(jì)和格式化最終頁(yè)面。使用JSP標(biāo)識(shí)或者小腳本來(lái)生成頁(yè)面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面,而不影響內(nèi)容的生成。

29、 在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí)和小腳本,生成所請(qǐng)求的內(nèi)容(例如,通過(guò)訪問(wèn)JavaBeans組件,使用JDBCTM技術(shù)訪問(wèn)數(shù)據(jù)庫(kù),或者包含文件),并且將結(jié)果以HTML(或者XML)頁(yè)面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性。 2.強(qiáng)調(diào)可重用的組件 絕大多數(shù)JSP頁(yè)面依賴于可重用的,跨平臺(tái)的組件(JavaBeans或者Enterprise Ja

30、vaBeansTM組件)來(lái)執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開(kāi)發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用。基于組件的方法加速了總體開(kāi)發(fā)過(guò)程,并且使得</p><p>  如Win NT,Linux,Unix. NT下IIS通過(guò)一個(gè)插件,例如JRUN或者ServletExec,就能支持JSP。著名的Web服務(wù)器Apache已經(jīng)能夠支持JSP。由于A

31、pache廣泛應(yīng)用在NT、Unix和Linux上,因此JSP有更廣泛的運(yùn)行平臺(tái)。雖然現(xiàn)在NT操作系統(tǒng)占了很大的市場(chǎng)份額,但是在服務(wù)器方面Unix的優(yōu)勢(shì)仍然很大,而新崛起的Linux更是來(lái)勢(shì)不小。從一個(gè)平臺(tái)移植到另外一個(gè)平臺(tái),JSP和JavaBean甚至不用重新編譯,因?yàn)镴ava字節(jié)碼都是標(biāo)準(zhǔn)的與平臺(tái)無(wú)關(guān)的。 JSP代碼被編譯成 Servlet 并由 Java 虛擬機(jī)解釋執(zhí)行,這種編譯操作

32、僅在對(duì) JSP 頁(yè)面的第一次請(qǐng)求時(shí)發(fā)生。在 JSP 環(huán)境下, HTML 代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來(lái)描述處理邏輯。普通的 HTML 頁(yè)面只依賴于 Web 服務(wù)器,而JSP 頁(yè)面需要附加的語(yǔ)言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到 HTML 代碼中,然后一起發(fā)送給瀏覽器。JS

33、P是面向 Web 服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。 </p><p>  2.2 JavaBean技術(shù)簡(jiǎn)介</p><p>  JavaBean是用于封裝某種業(yè)務(wù)邏輯或?qū)ο蟮腏ava類,此類具有特定的功能,即它是一個(gè)可重用 的Java軟件組件模型。由于這些組件模型都具有特定的功能,將其進(jìn)行合理的組織后,可以快速生成一個(gè)全新的程序,實(shí)現(xiàn)代碼的重用。Ja

34、vaBean的功 能是沒(méi)有任何限制的,對(duì)于任何可以使用Java代碼實(shí)現(xiàn)的部分或需求的對(duì)象,都可以使用JavaBean進(jìn)行封裝,如創(chuàng)建一個(gè)實(shí)體對(duì)象、數(shù)據(jù)庫(kù)操作、字符 串操作等。它對(duì)簡(jiǎn)單或復(fù)雜的功能都可以進(jìn)行實(shí)現(xiàn)。</p><p>  JavaBean可分為兩類,即可視化的JavaBean與非可視化的JavaBean??梢暬腏avaBean是一種傳統(tǒng)的應(yīng)用方式,主要用于 實(shí)現(xiàn)一些可視化界面,如一個(gè)窗體、按鈕、文本框

35、等。非可視化的JavaBean主要用于實(shí)現(xiàn)一些業(yè)務(wù)邏輯或封裝一些業(yè)務(wù)對(duì)象,并不存在可視化的界面。此種 方式的應(yīng)用比較多,在JSP編程之中被大量采用。</p><p>  將JavaBean應(yīng)用到JSP編程中,使JSP的發(fā)展進(jìn)入了一個(gè)嶄新的階段。它將HTML網(wǎng)頁(yè)代碼與Java代碼相分離,使其業(yè)務(wù)邏輯變得更加清晰。</p><p>  2.3 Servlet技術(shù)簡(jiǎn)介</p>&l

36、t;p>  Servlet是使用Java Servlet 應(yīng)用程序設(shè)計(jì)接口(API)及相關(guān)類和方法的 Java 程序。除了 Java Servlet API,Servlet 還可以使用用以擴(kuò)展和添加到 API 的 Java 類軟件包。Servlet 在啟用 Java 的 Web 服務(wù)器上或應(yīng)用服務(wù)器上運(yùn)行并擴(kuò)展了該服務(wù)器的能力。Java servlet對(duì)于Web服務(wù)器就好象Java applet對(duì)于Web瀏覽器。Servlet裝入

37、Web服務(wù)器并在Web服務(wù)器內(nèi)執(zhí)行,而applet裝入Web瀏覽器并在Web瀏覽器內(nèi)執(zhí)行。 Java Servlet API 定義了一個(gè)servlet 和Java使能的服務(wù)器之間的一個(gè)標(biāo)準(zhǔn)接口,這使得Servlets具有跨服務(wù)器平臺(tái)的特性。  Servlet 通過(guò)創(chuàng)建一個(gè)框架來(lái)擴(kuò)展服務(wù)器的能力,以提供在 Web 上進(jìn)行請(qǐng)求和響應(yīng)服務(wù)。當(dāng)客戶機(jī)發(fā)送請(qǐng)求至服務(wù)器時(shí),服務(wù)器可以將請(qǐng)求信息發(fā)送給 Servlet,并讓 Servlet 建立起服

38、務(wù)器返回給客戶機(jī)的響應(yīng)。 當(dāng)啟動(dòng) Web 服務(wù)器或客戶機(jī)第一次請(qǐng)求服務(wù)時(shí),可以自動(dòng)裝入 Servlet。裝入后, Servlet 繼續(xù)運(yùn)行</p><p>  2.4 Oracle數(shù)據(jù)庫(kù)簡(jiǎn)介</p><p>  Oracle數(shù)據(jù)庫(kù)是一種大型數(shù)據(jù)庫(kù)系統(tǒng),一般應(yīng)用于商業(yè),政府部門(mén),它的功能很強(qiáng)大,能夠處理大批量的數(shù)據(jù),在網(wǎng)絡(luò)方面也用的非常多。Oracle簡(jiǎn)稱甲骨文,是僅次于微軟公司的世界第二大

39、軟件公司,該公司名稱就叫Oracle。該公司成立于1979年,是加利福尼亞州的第一家在世界上推出以關(guān)系型數(shù)據(jù)管理系統(tǒng)(RDBMS)為中心的一家軟件公司。 </p><p>  Oracle不僅在全球最先推出了RDBMS,并且事實(shí)上掌握著這個(gè)市場(chǎng)的大部分份額?,F(xiàn)在,他們的RDBMS被廣泛應(yīng)用于各種操作環(huán)境:Windows NT、基于UNIX系統(tǒng)的小型機(jī)、IBM大型機(jī)以及一些專用硬件操作系統(tǒng)平臺(tái)。事實(shí)上,Oracle

40、已經(jīng)成為世界上最大的RDBMS供應(yīng)商,并且是世界上最主要的信息處理軟件供應(yīng)商。由于Oracle公司的RDBMS都以O(shè)racle為名,所以,在某種程度上Oracle己經(jīng)成為了RDBMS的代名詞。</p><p>  Oracle數(shù)據(jù)庫(kù)特點(diǎn):</p><p>  1.Oracle7.X以來(lái)引入了共享SQL和多線索服務(wù)器體系結(jié)構(gòu)。這減少了ORACLE的資源占用,并增強(qiáng)了ORACLE的能力,使之在

41、低檔軟硬件平臺(tái)上用較少的資源就可以支持更多的用戶,而在高檔平臺(tái)上可以支持成百上千個(gè)用戶。</p><p>  2.提供了基于角色(ROLE)分工的安全保密管理。在數(shù)據(jù)庫(kù)管理功能、完整性檢查、安全性、一致性方面都有良好的表現(xiàn)。</p><p>  3. 支持大量多媒體數(shù)據(jù),如二進(jìn)制圖形、聲音、動(dòng)畫(huà)以及多維數(shù)據(jù)結(jié)構(gòu)等。</p><p>  4. 提供了與第三代高級(jí)語(yǔ)言的

42、接口軟件PRO*系列,能在C,C++等主語(yǔ)</p><p>  言中嵌入SQL語(yǔ)句及過(guò)程化(PL/SQL)語(yǔ)句,對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行操縱。加上它有許多優(yōu)秀的前臺(tái)開(kāi)發(fā)工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速開(kāi)發(fā)生成基于客戶端PC 平臺(tái)的應(yīng)用程序,并具有良好的移植性。</p><p>  5. 提供了新的分布式數(shù)據(jù)庫(kù)能力??赏ㄟ^(guò)網(wǎng)絡(luò)較方便地讀寫(xiě)遠(yuǎn)

43、端數(shù)據(jù)庫(kù)里的數(shù)據(jù),并有對(duì)稱復(fù)制的技術(shù)。Oracle也許是最流行的服務(wù)器,占有最大的市場(chǎng)份額,它被廣泛用于各個(gè)市場(chǎng)領(lǐng)域,滿足一系列的存儲(chǔ)需求。</p><p>  Oracle數(shù)據(jù)庫(kù)優(yōu)點(diǎn):可用性強(qiáng),可擴(kuò)展性強(qiáng) ,數(shù)據(jù)安全性強(qiáng) ,穩(wěn)定性強(qiáng)。</p><p>  2.5 MyEclipse 簡(jiǎn)介</p><p>  MyEclipse,是一個(gè)十分優(yōu)秀的用于開(kāi)發(fā)Java,

44、J2EE的Eclipse插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對(duì)各種開(kāi)元產(chǎn)品的支持十分不錯(cuò)。</p><p>  MyEclipse企業(yè)級(jí)工作平臺(tái)(MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse)是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開(kāi)發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的Jav

45、aEE集成開(kāi)發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。</p><p>  在結(jié)構(gòu)上,MyEclipse的特征可以被分為7類: </p><p>  1. JavaEE模型   </p><p>  2. WEB開(kāi)發(fā)工具   </p>&

46、lt;p>  3. EJB開(kāi)發(fā)工具   </p><p>  4. 應(yīng)用程序服務(wù)器的連接器   </p><p>  5. JavaEE項(xiàng)目部署服務(wù)   </p><p>  6. 數(shù)據(jù)庫(kù)服務(wù)   </p><p>  7. MyEclipse整合幫助   </p><p>  對(duì)于以上每一種功能上的類別,在Ec

47、lipse中都有相應(yīng)的功能部件,并通過(guò)一系列的插件來(lái)實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級(jí)。簡(jiǎn)單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的JavaEE集成開(kāi)發(fā)環(huán)境,支持代碼編寫(xiě)、配置、測(cè)試以及除錯(cuò),MyEclipse6.0以前版本需先安裝Eclipse。MyEclipse6.0以后版本安裝時(shí)不需安裝Eclipse。</p>

48、<p>  2.6 Tomcat 服務(wù)器介紹</p><p>  Tomcat 服務(wù)器是一個(gè)免費(fèi)的開(kāi)放源代碼的Web 應(yīng)用服務(wù)器。</p><p>  Tomcat是Apache 軟件基金會(huì)(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由Apache、Sun 和其他一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun 的參與和支持,最新的S

49、ervlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門(mén)omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛(ài)好者的喜愛(ài)并得到了部分軟件開(kāi)發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。</p><p>  Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開(kāi)發(fā)應(yīng)用系

50、統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何 一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。</p><p>  Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用,是開(kāi)發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來(lái)說(shuō),可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁(yè)面的訪問(wèn)請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器

51、的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 </p><p>  當(dāng)配置正確時(shí),Apache 為HTML頁(yè)面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁(yè)面和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁(yè)面的功能,另外它還是一個(gè)Servlet和 JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模

52、式。不過(guò),Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。</p><p>  Tomcat是一個(gè)免費(fèi)的開(kāi)源的Serlvet容器,它是Apache基金會(huì)的Jakarta項(xiàng)目 中的一個(gè)核心項(xiàng)目,由Apache,Sun和其它一些公司及個(gè)人共同開(kāi)發(fā)而成。由于有了Sun的參與和支持,最新的Servlet和Jsp規(guī)范總能在 Tomcat中得到體現(xiàn)。</p><p>  在Tomcat中,應(yīng)

53、用程序的部署很簡(jiǎn)單,只需將WAR放到Tomcat的 webapp目錄下,Tomcat會(huì)自動(dòng)檢測(cè)到這個(gè)文件,并將其解壓。在瀏覽器中訪問(wèn)這個(gè)應(yīng)用的Jsp時(shí),通常第一次會(huì)很慢,因?yàn)門(mén)omcat要將 Jsp轉(zhuǎn)化為Servlet文件,然后編譯。編譯以后,訪問(wèn)將會(huì)很快。另外Tomcat也提供了一個(gè)應(yīng)用:manager,訪問(wèn)這個(gè)應(yīng)用需要用戶名和密 碼,用戶名和密碼存儲(chǔ)在一個(gè)xml文件中。通過(guò)這個(gè)應(yīng)用,輔助于Ftp,你可以在遠(yuǎn)程通過(guò)Web部署和撤銷應(yīng)用

54、。當(dāng)然本地也可以。</p><p>  Tomcat不僅僅是一個(gè)Servlet容器,它也具有傳統(tǒng)的Web服務(wù)器的功能:處理 Html頁(yè)面。但是與Apache相比,它的處理靜態(tài)Html的能力就不如Apache.我們可以將Tomcat和Apache集成到一塊,讓 Apache處理靜態(tài)Html,而Tomcat處理Jsp和Servlet.這種集成只需要修改一下Apache和Tomcat的配置文件即可。</p>

55、<p>  基于Tomcat的開(kāi)發(fā)其實(shí)主要是Jsp和Servlet的開(kāi)發(fā),開(kāi)發(fā)Jsp和 Servlet非常簡(jiǎn)單,你可以用普通的文本編輯器或者IDE,然后將其打包成WAR即可。我們這里要提到另外一個(gè)工具Ant,Ant也是Jakarta 中的一個(gè)子項(xiàng)目,它所實(shí)現(xiàn)的功能類似于Unix中的make.你需要寫(xiě)一個(gè)build.xml文件,然后運(yùn)行Ant就可以完成xml文件中定義的工作,這 個(gè)工具對(duì)于一個(gè)大的應(yīng)用來(lái)說(shuō)非常好,我們只需在x

56、ml中寫(xiě)很少的東西就可以將其編譯并打包成WAR.事實(shí)上,在很多應(yīng)用服務(wù)器的發(fā)布中都包含了Ant.另 外,在Jsp1.2中,可以利用標(biāo)簽庫(kù)實(shí)現(xiàn)Java代碼與Html文件的分離,使Jsp的維護(hù)更方便。</p><p>  2.7 開(kāi)發(fā)環(huán)境的配置</p><p>  2.7.1 JDK的安裝與配置</p><p>  1.在SUN的官方網(wǎng)站上下載JDK,然后安裝。<

57、;/p><p>  2.進(jìn)行JDK的環(huán)境變量的配置:</p><p>  第一步:右擊“我的電腦”,點(diǎn)擊“屬性”:</p><p>  第二步:選擇“高級(jí)”選項(xiàng)卡,點(diǎn)擊“環(huán)境變量”:</p><p>  第三步:在“系統(tǒng)變量”中,設(shè)置3項(xiàng)屬性,</p><p>  JAVA_HOME,PATH,CLASSPATH(大小寫(xiě)無(wú)

58、所謂),若已存在則點(diǎn)擊“編輯”,不存在則點(diǎn)擊“新建”:</p><p>  第四步:JAVA_HOME設(shè)為JDK的安裝路徑(如C:\Program </p><p>  Files\Java\jdk1.6.0_10),此路徑下包括lib,bin,jre等文件夾(此變量最好設(shè)置,因?yàn)橐院筮\(yùn)行tomcat,eclipse等都需要依靠此變量);</p><p>  圖2-

59、1 JAVA_HOME的變量值</p><p>  Path使得系統(tǒng)可以在任何路徑下識(shí)別java命令,設(shè)為:</p><p>  %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin </p><p>  CLASSPATH為java加載類(class or lib)路徑,只有類在classpath中,java命令才能識(shí)別,設(shè)為:</p>

60、;<p>  .;%JAVA_HOME%\lib; </p><p>  %JAVA_HOME%就是引用前面指定的JAVA_HOME</p><p>  圖2-2 classpath的變量值</p><p>  第五步:“開(kāi)始”->“運(yùn)行”,鍵入“cmd”:</p><p>  第六步:鍵入命令“java -version

61、”,出現(xiàn)JDK的版本信息,說(shuō)明環(huán)境變量配置成功。</p><p>  圖2-3 jdk的版本信息</p><p>  2.7.2 Tomcat的安裝</p><p>  下載并安裝tomcat6.0。進(jìn)入 \bin目錄,雙擊tomcat6w.bat執(zhí)行文件后點(diǎn)Start啟動(dòng)Tomcat服務(wù)器,打開(kāi)瀏覽器,鍵入http://localhost:8080進(jìn)入Tomca

62、t服務(wù)器的主頁(yè)面。如果出現(xiàn)如圖2-4 界面則表示安裝成功。</p><p>  圖2-4 Tomcat 歡迎界面</p><p>  2.7.3 數(shù)據(jù)庫(kù)后臺(tái)環(huán)境配置</p><p>  在Oracle中文網(wǎng)站http://www.oracle.com/cn下載Oracle并安裝。下載Oracle的JDBC驅(qū)動(dòng)程序ojdbc14.jar,把它放在開(kāi)發(fā)路徑的\WebR

63、oot\WEB-INF\lib下面即可。</p><p>  3. 網(wǎng)上商城系統(tǒng)需求分析</p><p><b>  3.1 需求分析</b></p><p>  系統(tǒng)的實(shí)際應(yīng)用性很明顯,電子商務(wù)發(fā)展非常迅速,人們追求的是簡(jiǎn)捷、方便、省時(shí),通過(guò)Internet選購(gòu)商品,不必花費(fèi)太多的時(shí)間去逛商場(chǎng),坐在電腦前就可以買到稱心的商品,符合人們的心

64、愿。關(guān)鍵是在具備基本功能的基礎(chǔ)上要保證操作簡(jiǎn)單以及界面美觀,并要使顧客很快適應(yīng)這個(gè)系統(tǒng)同時(shí)還需要考慮交易的安全性。</p><p>  其基本功能是,用戶能夠通過(guò)該系統(tǒng)瀏覽商品信息,以及進(jìn)行購(gòu)物,而管理員要能對(duì)網(wǎng)站做必要的管理,因此必須要有針對(duì)與用戶和管理員的前臺(tái)用戶操作功能和后臺(tái)管理員操作功能。</p><p>  其中前臺(tái)操作主要是用戶進(jìn)行操作,包括:</p><p

65、><b>  用戶登錄及注冊(cè)</b></p><p>  當(dāng)用戶要購(gòu)買商品必須登錄,而后由系統(tǒng)驗(yàn)證登錄信息是否正確,轉(zhuǎn)到登錄后的界面,否則繼續(xù)轉(zhuǎn)到登錄界面,如果是新用戶,則需要先注冊(cè),注冊(cè)時(shí)應(yīng)該填寫(xiě)用戶名、密碼、地址、郵編等信息方便以后的購(gòu)物操作,注冊(cè)成功后,可以用注冊(cè)的用戶名進(jìn)行登錄。</p><p><b>  查看商品信息</b>&l

66、t;/p><p>  用戶應(yīng)能查看所有商品的信息,包括商品名稱,價(jià)格,詳細(xì)介紹,圖片等。也可以按商品名稱、價(jià)格、類別等查詢特定商品的信息。</p><p><b>  購(gòu)物車功能</b></p><p>  用戶對(duì)于要購(gòu)買的商品可以添加到購(gòu)物車中,并能更新每中商品的數(shù)量。購(gòu)物車應(yīng)該能夠記錄所有的添加進(jìn)來(lái)的商品的單價(jià),數(shù)量,并計(jì)算出總價(jià)錢(qián),方便用戶操

67、作。要使用戶能夠隨時(shí)查看當(dāng)前購(gòu)物車中的商品信息,對(duì)于放棄購(gòu)買的商品要能從購(gòu)物車中刪除,并從總價(jià)格中減去該商品的價(jià)錢(qián)。同時(shí)應(yīng)該具有清空購(gòu)物車的功能。</p><p><b>  用戶下訂單</b></p><p>  用戶已經(jīng)決定購(gòu)買物品并且提交了購(gòu)物車,則系統(tǒng)應(yīng)該能夠?qū)?dāng)前購(gòu)物車中的商品信息,結(jié)合用戶的注冊(cè)信息,當(dāng)前的系統(tǒng)時(shí)間,生成訂單,生成訂單號(hào)。然后用戶可以查看自

68、己的訂單,查看訂單中訂購(gòu)的東西,價(jià)格等。</p><p>  后臺(tái)操作主要是由管理員對(duì)網(wǎng)站進(jìn)行管理,包括:</p><p><b>  商品管理</b></p><p>  管理員可以查看系統(tǒng)中的所有圖書(shū).可以添加圖書(shū)資料并且刪除某一圖書(shū)資料。</p><p><b>  訂單管理</b></

69、p><p>  管理員可以查看所有訂單信息,并且可以根據(jù)具體情況更新訂單的付款和發(fā)貨狀態(tài)。</p><p><b>  用戶管理</b></p><p>  管理用戶:管理員可以查看所有用戶的資料,刪除用戶。 </p><p>  3.2 可行性分析</p><p>  3.2.1 技術(shù)可行性

70、分析</p><p>  網(wǎng)上購(gòu)物服務(wù)系統(tǒng)的開(kāi)發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程。為了保證系統(tǒng)開(kāi)發(fā)成功,必須采用工程化的系統(tǒng)開(kāi)發(fā)方法,并研究出一些符合工程化標(biāo)準(zhǔn)的開(kāi)發(fā)方法。這些方法旨在指導(dǎo)開(kāi)發(fā)者進(jìn)行工程化的系統(tǒng)開(kāi)發(fā),從而加快系統(tǒng)開(kāi)發(fā)的速度,保證質(zhì)量以及降低開(kāi)發(fā)成本。工程化的系統(tǒng)開(kāi)發(fā)方法確實(shí)在開(kāi)發(fā)實(shí)踐中取得了一定的效果。此次開(kāi)發(fā)使用JSP作為開(kāi)發(fā)語(yǔ)言,采用Servlet技術(shù),Tomcat6.0作為Web服務(wù)器。</p&g

71、t;<p>  3.2.2 運(yùn)行可行性分析</p><p>  隨著計(jì)算機(jī)知識(shí)的普及和推廣,越來(lái)越多的人掌握了計(jì)算機(jī)的基本使用方法和技能。隨著Internet的發(fā)展,用戶對(duì)于網(wǎng)絡(luò)、WINDOWS等環(huán)境下的軟件使用比較熟悉,對(duì)于新鮮事物,用戶表現(xiàn)出極大的興趣和熱情。網(wǎng)上商城界面界面友好,操作簡(jiǎn)單容易學(xué)習(xí)。 </p><p>  3.2.3 經(jīng)濟(jì)可行性分析</p>

72、<p>  網(wǎng)上購(gòu)物服務(wù)系統(tǒng)給人們帶來(lái)了方便,成為一種全新的商務(wù)模式。因此,不用出門(mén)就可以在家購(gòu)物的新時(shí)尚已經(jīng)到來(lái),構(gòu)建一個(gè)網(wǎng)上購(gòu)物服務(wù)系統(tǒng)在經(jīng)濟(jì)上是完全可行的。</p><p>  就本系統(tǒng)而言,隨著電腦的普及,為消費(fèi)者在網(wǎng)絡(luò)上進(jìn)行購(gòu)物提供有利的條件。而一個(gè)網(wǎng)上購(gòu)物服務(wù)系統(tǒng)可以為消費(fèi)者提供軟件條件,這樣消費(fèi)者便可以足不出戶的買商品了。商家可以從中獲得利潤(rùn),兩全其美。</p><

73、p>  通過(guò)以上的分析,開(kāi)發(fā)網(wǎng)上購(gòu)物服務(wù)系統(tǒng)是完全可行的。</p><p><b>  3.3運(yùn)行環(huán)境 </b></p><p>  本系統(tǒng)采用聯(lián)網(wǎng)多機(jī)多用戶操作方式,系統(tǒng)的運(yùn)行環(huán)境包括硬件、操作系統(tǒng)、關(guān)系數(shù)據(jù)庫(kù)等軟件:</p><p>  硬件:中央處理器(CPU):奔4 以上的處理器;</p><p>  硬

74、 盤(pán):80 M以上硬盤(pán);</p><p>  內(nèi) 存:256 MB</p><p>  顯示器: 17寸顯示器</p><p>  操作系統(tǒng): Windows XP </p><p>  關(guān)系數(shù)據(jù)庫(kù):Oracle 10g</p><p>  4. 網(wǎng)上商城系統(tǒng)總體設(shè)計(jì)</p><p>  4

75、.1 系統(tǒng)的功能模塊</p><p>  4.1.1 系統(tǒng)前臺(tái)</p><p>  1.用戶注冊(cè):登錄本系統(tǒng)前得注冊(cè)為本系統(tǒng)會(huì)員,填寫(xiě)真實(shí)相關(guān)信息,包括:真實(shí)姓名,家庭住址,電子郵件,郵編等,方便購(gòu)買商品后郵寄。系統(tǒng)檢測(cè)輸入的合法性。</p><p>  2.用戶登錄:注冊(cè)為會(huì)員后可登錄系統(tǒng)進(jìn)行購(gòu)買相關(guān)操作,系統(tǒng)檢查登錄輸入與數(shù)據(jù)庫(kù)信息是否一致,判斷是否登錄成功。&

76、lt;/p><p>  3.商品查詢:用戶可在搜索欄中輸入商品名稱,類別等進(jìn)行搜索查詢自己想要的商品信息。</p><p>  4.商品瀏覽:用戶進(jìn)入系統(tǒng)后可以分頁(yè)瀏覽商品以及商品詳細(xì)信息,選中商品可添加至購(gòu)物車中。</p><p>  5. 購(gòu)物車:購(gòu)物車保存用戶選中的商品,顯示用戶購(gòu)買商品的名稱,單價(jià),數(shù)量以及總價(jià)等信息。用戶可對(duì)購(gòu)物車中商品修改購(gòu)買數(shù)量,刪除某個(gè)商

77、品或清空購(gòu)物車。</p><p>  6. 生成訂單:系統(tǒng)判斷用戶是否登錄,沒(méi)有登錄跳轉(zhuǎn)到登錄界面,登錄成功進(jìn)入完成訂單模塊,核對(duì)用戶信息可進(jìn)行修改,無(wú)誤可生成訂單。</p><p>  7.公告新聞:發(fā)布系統(tǒng)各種信息,活動(dòng)等。</p><p>  4.1.2 系統(tǒng)后臺(tái)</p><p>  1.商品管理:管理員登錄系統(tǒng),可對(duì)商品進(jìn)行管理:添加

78、新的商品,修改商品信息,或者刪除商品。</p><p>  2.用戶管理:管理員對(duì)用戶進(jìn)行管理:添加用戶,刪除用戶,修改用戶信息。</p><p>  3.訂單管理:管理員可以對(duì)訂單進(jìn)行查看,刪除等操作。</p><p>  4.管理員管理:添加新的管理員,修改個(gè)人信息。</p><p><b>  4.2 數(shù)據(jù)庫(kù)設(shè)計(jì)</b&

79、gt;</p><p>  4.2.1 數(shù)據(jù)庫(kù)系統(tǒng)概述</p><p>  數(shù)據(jù)庫(kù)在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率,以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整和一致。</p><p>  數(shù)據(jù)庫(kù)系統(tǒng)是在文件系統(tǒng)的基礎(chǔ)上發(fā)展而來(lái)的,經(jīng)歷了層次數(shù)據(jù)庫(kù)、網(wǎng)狀數(shù)據(jù)庫(kù)、關(guān)系數(shù)據(jù)庫(kù)三個(gè)階段

80、。由于關(guān)系數(shù)據(jù)庫(kù)采用人們比較容易理解和接受的二維表格來(lái)組織數(shù)據(jù),發(fā)展迅速,已成為數(shù)據(jù)庫(kù)產(chǎn)品的主流。</p><p>  本系統(tǒng)的前端開(kāi)發(fā)是使用JSP技術(shù),通過(guò)Servlet進(jìn)行邏輯控制和數(shù)據(jù)庫(kù)連接,而后臺(tái)數(shù)據(jù)庫(kù)采用的是Oracle數(shù)據(jù)庫(kù)。對(duì)比其他的大型數(shù)據(jù)庫(kù)管理系統(tǒng),Oracle數(shù)據(jù)庫(kù)具有可靠的安全性,較快的存儲(chǔ)速度,高度的兼容性。應(yīng)用Oracle作為后臺(tái)數(shù)據(jù)庫(kù)為系統(tǒng)的開(kāi)發(fā)提供了強(qiáng)有力的支持,并對(duì)以后軟件的運(yùn)行提

81、供了堅(jiān)實(shí)的基礎(chǔ),因此,我們采用了Oracle作為后臺(tái)數(shù)據(jù)庫(kù)。</p><p>  4.2.2總體結(jié)構(gòu)E-R圖</p><p>  圖4-1實(shí)體關(guān)系E-R圖</p><p>  4.2.3 數(shù)據(jù)庫(kù)表設(shè)計(jì)</p><p>  本系統(tǒng)的數(shù)據(jù)庫(kù)其中包括5個(gè)表,分別為管理員表admin, 商品信息表goods 訂單表orders, 訂單細(xì)節(jié)表orde

82、rdetail用戶信息表userinfo,。詳情請(qǐng)見(jiàn)下面的數(shù)據(jù)庫(kù)表:</p><p>  管理員表:如圖 4-2</p><p>  圖 4-2 管理員表</p><p>  商品信息表:如圖4-3</p><p>  圖 4-3 商品信息表</p><p><b>  訂單表:如圖4-4</b>

83、</p><p><b>  圖4-4 訂單表</b></p><p>  訂單細(xì)節(jié)表:如圖4-5</p><p>  圖4-5 訂單細(xì)節(jié)表</p><p>  用戶信息表:如圖4-6</p><p>  圖4-6 用戶信息表</p><p>  4.3 數(shù)據(jù)流程分析<

84、;/p><p>  本文中所涉及的數(shù)據(jù)流圖是描繪系統(tǒng)的邏輯模型,圖中沒(méi)有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動(dòng)和處理的情況。其各個(gè)符號(hào)意義說(shuō)明如下:</p><p>  圖 4-7 圖 4-8 圖4-9 圖4-10</p><p>  圖4-7 表示數(shù)據(jù)的源點(diǎn)或終點(diǎn),即指外部實(shí)體。</p&g

85、t;<p>  圖4-8 表示數(shù)據(jù)存儲(chǔ)。</p><p>  圖 4-9 表示數(shù)據(jù)處理。</p><p>  圖 4-10表示數(shù)據(jù)流,即特定數(shù)據(jù)的流動(dòng)方向。</p><p>  網(wǎng)上商城系統(tǒng)頂層圖:網(wǎng)上商城系統(tǒng)對(duì)管理員和用戶的各種操作進(jìn)行響應(yīng)。</p><p>  圖 4-11 系統(tǒng)頂層圖</p><p>

86、;  用戶登陸注冊(cè)模塊數(shù)據(jù)流圖,管理用戶的登陸、登出、注冊(cè)的模塊,用戶登陸時(shí),由該模塊負(fù)責(zé)查詢數(shù)據(jù)庫(kù)中的用戶文件,驗(yàn)證用戶身份,用戶注冊(cè)時(shí),由該模塊將注冊(cè)信息寫(xiě)入用戶文件。</p><p>  圖4-12 登錄注冊(cè)模塊數(shù)據(jù)流圖</p><p>  購(gòu)物管理模塊,當(dāng)用戶提出各種購(gòu)物請(qǐng)求后,由該模塊響應(yīng),負(fù)責(zé)從商品文件中讀取響應(yīng)的內(nèi)容,反饋給用戶。</p><p>  

87、圖 4-13 購(gòu)物管理模塊數(shù)據(jù)流圖</p><p>  商品管理模塊數(shù)據(jù)流圖,當(dāng)管理員提出對(duì)商品管理的請(qǐng)求后,由該模塊負(fù)責(zé)對(duì)商品文件的讀取,插入,修改,并把相關(guān)信息顯示給管理員。</p><p>  圖4-14 商品管理模塊數(shù)據(jù)流圖</p><p>  用戶管理模塊數(shù)據(jù)流圖,主要是由管理員提交用戶管理請(qǐng)求后,由用戶管理模塊通過(guò)讀取或修改數(shù)據(jù)庫(kù)中的用戶文件,并將操作結(jié)

88、果返回管理員。</p><p>  圖 4-15 用戶管理模塊數(shù)據(jù)流圖</p><p>  訂單管理模塊,是由管理員提出查詢訂單的請(qǐng)求,由該模塊負(fù)責(zé)查詢用戶</p><p>  訂單文件中的信息,并把相關(guān)信息顯示給管理員。</p><p>  圖 4-16 訂單管理模塊數(shù)據(jù)流圖</p><p>  4.4 主要業(yè)務(wù)流程

89、分析</p><p>  4.4.1 用戶注冊(cè)</p><p>  用戶注冊(cè)流程圖如4-17所示:</p><p>  圖4-17 用戶注冊(cè)流程圖</p><p>  4.4.2 用戶登錄</p><p>  用戶登錄流程如圖4-18所示</p><p>  圖4-18用戶登錄流程圖<

90、/p><p>  4.4.3 網(wǎng)上購(gòu)物</p><p>  圖4-19 網(wǎng)上購(gòu)物流程圖</p><p>  5.網(wǎng)上商城系統(tǒng)詳細(xì)設(shè)計(jì)</p><p>  5.1 系統(tǒng)主要文件</p><p>  系統(tǒng)設(shè)計(jì)中包括業(yè)務(wù)邏輯層和表示層:</p><p>  業(yè)務(wù)邏輯層由兩個(gè)包組成分別是: com.frl

91、.model和com.frl.servlet,兩個(gè)包分別完成不同的功能由不同的類組成。表示層由前臺(tái)系統(tǒng)表示層和后臺(tái)系統(tǒng)表示層組成。</p><p>  5.1.1 com.frl.model包 </p><p>  com.frl.servlet包</p><p><b>  5.1.3前臺(tái)系統(tǒng)</b></p><p>

92、;<b>  5.1.4后臺(tái)系統(tǒng)</b></p><p>  5.2詳細(xì)功能設(shè)計(jì)及實(shí)現(xiàn)</p><p>  5.2.1 用戶注冊(cè)模塊 </p><p>  用戶注冊(cè)是為第一次登錄網(wǎng)站的用戶所設(shè)計(jì)的。在用戶成為本站用戶之前一定要注冊(cè)才可以訪問(wèn)我網(wǎng)站的其它網(wǎng)頁(yè)。</p><p>  1.用戶注冊(cè)包括:登錄名稱,真實(shí)姓名,設(shè)

93、置密碼,電子郵件等。</p><p>  2.注冊(cè)成功后,才可以登錄系統(tǒng)購(gòu)買商品,如圖5-1:</p><p>  圖5-1 系統(tǒng)注冊(cè)頁(yè)面</p><p>  5.2.2 用戶登錄模塊 </p><p>  1.用戶登錄包括:登錄名稱,輸入密碼。</p><p>  2.當(dāng)用戶登錄后由系統(tǒng)核對(duì)該用戶的名稱和密碼是否正確

94、,如果無(wú)誤的話用戶可以直接進(jìn)入網(wǎng)站的其它頁(yè)面進(jìn)行瀏覽和訂購(gòu),如圖5-2:</p><p>  圖 5-2 登錄界面</p><p><b>  核心代碼:</b></p><p>  public boolean checkUser(String un,String pw){</p><p>  boolean b=fa

95、lse;</p><p><b>  try{</b></p><p>  ct=new ConnDB().getConn();</p><p>  ps=ct.prepareStatement("select password from userinfo where username=?");</p><

96、;p>  ps.setString(1, un);</p><p>  rs=ps.executeQuery();</p><p>  if(rs.next()){</p><p>  //從數(shù)據(jù)庫(kù)取出um對(duì)應(yīng)的密碼與pw比較</p><p>  String dbpw=rs.getString(1);</p><p

97、>  if(dbpw.equals(pw)){</p><p><b>  b=true;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  }catch(Exception e){</p><

98、;p>  e.printStackTrace();</p><p><b>  }finally{</b></p><p><b>  //關(guān)閉資源</b></p><p>  this.close();</p><p><b>  }</b></p>&l

99、t;p><b>  return b;</b></p><p><b>  }</b></p><p>  public void doGet(HttpServletRequest request, HttpServletResponse response)</p><p>  throws ServletExcep

100、tion, IOException {</p><p>  response.setContentType("text/html");</p><p>  response.setCharacterEncoding("utf-8");</p><p>  PrintWriter out = response.getWriter

101、();</p><p>  //得到用戶名un和密碼pw</p><p>  String un=request.getParameter("username");</p><p>  String pw=request.getParameter("password");</p><p>  UserB

102、eanBO ubb=new UserBeanBO();</p><p>  if(ubb.checkUser(un, pw)){</p><p>  //把用戶信息放入session中</p><p>  UserBean ub=ubb.getUserBean(un);</p><p>  request.getSession().setAt

103、tribute("userinfo", ub);</p><p>  //從session中取出購(gòu)物車信息 在usergoodsinfo.jsp中顯示</p><p>  MyCarBo cb=(MyCarBo)request.getSession().getAttribute("mycar");</p><p>  Arra

104、yList al=cb.showMyCar();</p><p>  request.setAttribute("shoppingcarinfo", al);</p><p>  //用戶合法 返回用戶貨物信息界面</p><p>  request.getRequestDispatcher("usergoodsinfo.jsp&quo

105、t;).forward(request, response);</p><p><b>  }else{</b></p><p>  //用戶不合法返回登錄界面</p><p>  request.getRequestDispatcher("login.jsp").forward(request, response);<

106、;/p><p><b>  }</b></p><p><b>  }</b></p><p>  5.2.3 商品顯示模塊 </p><p>  前臺(tái)商品的顯示,顯示商品的圖片、名稱、價(jià)格等信息,用戶可以輸入商品名稱,種類等進(jìn)行搜索,也可以直接點(diǎn)擊商品查看商品細(xì)節(jié)信息。</p><

107、p><b>  圖5-3 商品顯示</b></p><p>  圖5-4:商品細(xì)節(jié)顯示</p><p>  5.2.4 購(gòu)物車模塊 </p><p>  購(gòu)物車保存用戶選擇的商品,顯示名稱價(jià)格,總價(jià)等信息,其中用戶可以修改購(gòu)買數(shù)量,可以刪除已選的商品,可以提交購(gòu)物車,也可以清空購(gòu)物車,同時(shí)也可以繼續(xù)購(gòu)買。</p><p

108、>  圖5-5 購(gòu)物車顯示</p><p><b>  關(guān)鍵代碼:</b></p><p>  public class MyCarBo {</p><p>  private Connection ct = null;</p><p>  private PreparedStatement ps = null;&

109、lt;/p><p>  private ResultSet rs = null;</p><p>  private int allPrice=0;</p><p>  //定義一個(gè)hashmap集合 用于存儲(chǔ)貨物的id和數(shù)量</p><p>  HashMap hm=new HashMap();</p><p>  pu

110、blic int getAllPrice(){</p><p>  return this.allPrice;</p><p><b>  }</b></p><p>  //通過(guò)貨物ID取得貨物的數(shù)量</p><p>  public String getNumById(String goodsId){</p&g

111、t;<p>  return (String)hm.get(goodsId);</p><p><b>  }</b></p><p><b>  //添加貨物</b></p><p>  public void addGoods( String goodsId,String goodsNum){</p

112、><p>  hm.put(goodsId, goodsNum);</p><p><b>  }</b></p><p><b>  //刪除貨物</b></p><p>  public void delGoods(String goodsId){</p><p>  hm.

113、remove(goodsId);</p><p><b>  }</b></p><p><b>  //清空貨物</b></p><p>  public void clear(){</p><p>  hm.clear();</p><p><b>  }<

114、;/b></p><p><b>  //修改貨物數(shù)量</b></p><p>  public void updateGoods(String goodsId, String newNum){</p><p>  hm.put(goodsId, newNum);</p><p><b>  }</

115、b></p><p><b>  //顯示購(gòu)物車</b></p><p>  public ArrayList showMyCar(){</p><p>  ArrayList <GoodsBean> al=new ArrayList <GoodsBean>();</p><p><b

116、>  try{</b></p><p>  String sql="select * from goods where goodsId in";</p><p>  Iterator it=hm.keySet().iterator();</p><p>  String sub="(";</p>

117、<p>  while(it.hasNext()){</p><p>  String goodsId=(String)it.next();</p><p>  if(it.hasNext()){</p><p>  sub+=goodsId+",";</p><p><b>  }else{<

118、/b></p><p>  sub+=goodsId+")";</p><p><b>  } </b></p><p><b>  }</b></p><p><b>  sql+=sub;</b></p><p>  /

119、/System.out.println(sql);</p><p>  ct=new ConnDB().getConn();</p><p>  ps=ct.prepareStatement(sql);</p><p>  rs=ps.executeQuery();</p><p>  this.allPrice=0;</p>

溫馨提示

  • 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ù)僅提供信息存儲(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)論