2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩64頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

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ī)砹烁叩睦妗?lt;/p>

2、<p>  本論文研究的內(nèi)容就是網(wǎng)上商城的具體功能及實(shí)現(xiàn)。實(shí)現(xiàn)了商品查詢、商品管理、商品顯示、購物車、訂單管理、用戶管理等功能?;旧蠈?shí)現(xiàn)了網(wǎng)上商城功能和購物流程,能夠完成網(wǎng)上商品的交易。其開發(fā)主要包括:數(shù)據(jù)庫的建立,前臺(tái)Web頁面設(shè)計(jì),后臺(tái)管理。本系統(tǒng)采用Oracle數(shù)據(jù)庫和Tomcat 6.0 服務(wù)器實(shí)現(xiàn)。</p><p>  關(guān)鍵詞:網(wǎng)上商城、JSP、Oracle數(shù)據(jù)庫</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 開發(fā)背景5</p><p>  1.2 開發(fā)目的和意義5</p><p>  1.3 網(wǎng)上商城簡介5</p><p>  2. 軟件開發(fā)環(huán)境7</p><p>  2.

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

11、p><p>  2.7 開發(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ù)庫后臺(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ù)庫設(shè)計(jì)20</p><p>  4.2.1 數(shù)據(jù)庫系統(tǒng)概述20</p><

14、;p>  4.2.2總體結(jié)構(gòu)E-R圖20</p><p>  4.2.3 數(shù)據(jù)庫表設(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)上購物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 購物車模塊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)測試40</p><p>  6.1 軟件測試的方法和步驟40</p><p>  6.2 測試及評(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 開發(fā)背景</b></p><p>  隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用的普及,人們的生活水平不斷的提升,傳統(tǒng)的購物方式已經(jīng)不能滿足人們對(duì)購物的需求,加上商家對(duì)低成本商品銷售的期望,網(wǎng)上商城應(yīng)運(yùn)而生。</p><p>  二十一

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

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

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

24、,贏得市場占有率多年穩(wěn)居行業(yè)首位的驕人成績,也是時(shí)代發(fā)展的趨勢。</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)勢比較明顯。</p><p>  2.永不關(guān)門:每天24小時(shí),每周7天。都可以進(jìn)行商品的瀏覽與購買,工作時(shí)間可以隨時(shí)與

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

26、>  2. 軟件開發(fā)環(huán)境</b></p><p><b>  2.1 JSP簡介</b></p><p>  JSP是Sun公司推出的新一代站點(diǎn)開發(fā)語言,他完全解決了目前ASP,PHP的一個(gè)通病既腳本級(jí)執(zhí)行(據(jù)說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頁面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。使用JSP標(biāo)識(shí)或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容。生成內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端運(yùn)行。如果核心邏輯被封裝在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。

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

30、vaBeansTM組件)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者客戶團(tuán)體所使用?;诮M件的方法加速了總體開發(fā)過程,并且使得</p><p>  如Win NT,Linux,Unix. NT下IIS通過一個(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)占了很大的市場份額,但是在服務(wù)器方面Unix的優(yōu)勢仍然很大,而新崛起的Linux更是來勢不小。從一個(gè)平臺(tái)移植到另外一個(gè)平臺(tái),JSP和JavaBean甚至不用重新編譯,因?yàn)镴ava字節(jié)碼都是標(biāo)準(zhǔn)的與平臺(tái)無關(guān)的。 JSP代碼被編譯成 Servlet 并由 Java 虛擬機(jī)解釋執(zhí)行,這種編譯操作

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

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

34、vaBean的功 能是沒有任何限制的,對(duì)于任何可以使用Java代碼實(shí)現(xiàn)的部分或需求的對(duì)象,都可以使用JavaBean進(jìn)行封裝,如創(chuàng)建一個(gè)實(shí)體對(duì)象、數(shù)據(jù)庫操作、字符 串操作等。它對(duì)簡單或復(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)頁代碼與Java代碼相分離,使其業(yè)務(wù)邏輯變得更加清晰。</p><p>  2.3 Servlet技術(shù)簡介</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 通過創(chuàng)建一個(gè)框架來擴(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ù)庫簡介</p><p>  Oracle數(shù)據(jù)庫是一種大型數(shù)據(jù)庫系統(tǒng),一般應(yīng)用于商業(yè),政府部門,它的功能很強(qiáng)大,能夠處理大批量的數(shù)據(jù),在網(wǎng)絡(luò)方面也用的非常多。Oracle簡稱甲骨文,是僅次于微軟公司的世界第二大

39、軟件公司,該公司名稱就叫Oracle。該公司成立于1979年,是加利福尼亞州的第一家在世界上推出以關(guān)系型數(shù)據(jù)管理系統(tǒng)(RDBMS)為中心的一家軟件公司。 </p><p>  Oracle不僅在全球最先推出了RDBMS,并且事實(shí)上掌握著這個(gè)市場的大部分份額。現(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ù)庫特點(diǎn):</p><p>  1.Oracle7.X以來引入了共享SQL和多線索服務(wù)器體系結(jié)構(gòu)。這減少了ORACLE的資源占用,并增強(qiáng)了ORACLE的能力,使之在

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

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

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

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

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

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

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

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

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

50、統(tǒng)常用的功能;而且它還在不斷的改進(jìn)和完善中,任何 一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。</p><p>  Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁面的訪問請(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頁面服務(wù),而Tomcat 實(shí)際上運(yùn)行JSP 頁面和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁面的功能,另外它還是一個(gè)Servlet和 JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模

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

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

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

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

56、ml中寫很少的東西就可以將其編譯并打包成WAR.事實(shí)上,在很多應(yīng)用服務(wù)器的發(fā)布中都包含了Ant.另 外,在Jsp1.2中,可以利用標(biāo)簽庫實(shí)現(xiàn)Java代碼與Html文件的分離,使Jsp的維護(hù)更方便。</p><p>  2.7 開發(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(大小寫無

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>  第五步:“開始”->“運(yùn)行”,鍵入“cmd”:</p><p>  第六步:鍵入命令“java -version

61、”,出現(xiàn)JDK的版本信息,說明環(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ù)器,打開瀏覽器,鍵入http://localhost:8080進(jìn)入Tomca

62、t服務(wù)器的主頁面。如果出現(xiàn)如圖2-4 界面則表示安裝成功。</p><p>  圖2-4 Tomcat 歡迎界面</p><p>  2.7.3 數(shù)據(jù)庫后臺(tái)環(huán)境配置</p><p>  在Oracle中文網(wǎng)站http://www.oracle.com/cn下載Oracle并安裝。下載Oracle的JDBC驅(qū)動(dòng)程序ojdbc14.jar,把它放在開發(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ā)展非常迅速,人們追求的是簡捷、方便、省時(shí),通過Internet選購商品,不必花費(fèi)太多的時(shí)間去逛商場,坐在電腦前就可以買到稱心的商品,符合人們的心

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

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

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

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

68、己的訂單,查看訂單中訂購的東西,價(jià)格等。</p><p>  后臺(tái)操作主要是由管理員對(duì)網(wǎng)站進(jìn)行管理,包括:</p><p><b>  商品管理</b></p><p>  管理員可以查看系統(tǒng)中的所有圖書.可以添加圖書資料并且刪除某一圖書資料。</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)上購物服務(wù)系統(tǒng)的開發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程。為了保證系統(tǒng)開發(fā)成功,必須采用工程化的系統(tǒng)開發(fā)方法,并研究出一些符合工程化標(biāo)準(zhǔn)的開發(fā)方法。這些方法旨在指導(dǎo)開發(fā)者進(jìn)行工程化的系統(tǒng)開發(fā),從而加快系統(tǒng)開發(fā)的速度,保證質(zhì)量以及降低開發(fā)成本。工程化的系統(tǒng)開發(fā)方法確實(shí)在開發(fā)實(shí)踐中取得了一定的效果。此次開發(fā)使用JSP作為開發(fā)語言,采用Servlet技術(shù),Tomcat6.0作為Web服務(wù)器。</p&g

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

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

73、p>  通過以上的分析,開發(fā)網(wǎng)上購物服務(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ù)庫等軟件:</p><p>  硬件:中央處理器(CPU):奔4 以上的處理器;</p><p>  硬

74、 盤:80 M以上硬盤;</p><p>  內(nèi) 存:256 MB</p><p>  顯示器: 17寸顯示器</p><p>  操作系統(tǒng): Windows XP </p><p>  關(guān)系數(shù)據(jù)庫: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ì)員,填寫真實(shí)相關(guān)信息,包括:真實(shí)姓名,家庭住址,電子郵件,郵編等,方便購買商品后郵寄。系統(tǒng)檢測輸入的合法性。</p><p>  2.用戶登錄:注冊(cè)為會(huì)員后可登錄系統(tǒng)進(jìn)行購買相關(guān)操作,系統(tǒng)檢查登錄輸入與數(shù)據(jù)庫信息是否一致,判斷是否登錄成功。&

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

77、品或清空購物車。</p><p>  6. 生成訂單:系統(tǒng)判斷用戶是否登錄,沒有登錄跳轉(zhuǎn)到登錄界面,登錄成功進(jìn)入完成訂單模塊,核對(duì)用戶信息可進(jìn)行修改,無誤可生成訂單。</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ù)庫設(shè)計(jì)</b&

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

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

81、供了堅(jiān)實(shí)的基礎(chǔ),因此,我們采用了Oracle作為后臺(tái)數(shù)據(jù)庫。</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ù)庫表設(shè)計(jì)</p><p>  本系統(tǒng)的數(shù)據(jù)庫其中包括5個(gè)表,分別為管理員表admin, 商品信息表goods 訂單表orders, 訂單細(xì)節(jié)表orde

82、rdetail用戶信息表userinfo,。詳情請(qǐng)見下面的數(shù)據(jù)庫表:</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)的邏輯模型,圖中沒有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動(dòng)和處理的情況。其各個(gè)符號(hào)意義說明如下:</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ù)庫中的用戶文件,驗(yàn)證用戶身份,用戶注冊(cè)時(shí),由該模塊將注冊(cè)信息寫入用戶文件。</p><p>  圖4-12 登錄注冊(cè)模塊數(shù)據(jù)流圖</p><p>  購物管理模塊,當(dāng)用戶提出各種購物請(qǐng)求后,由該模塊響應(yīng),負(fù)責(zé)從商品文件中讀取響應(yīng)的內(nèi)容,反饋給用戶。</p><p>  

87、圖 4-13 購物管理模塊數(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)求后,由用戶管理模塊通過讀取或修改數(shù)據(jù)庫中的用戶文件,并將操作結(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)上購物</p><p>  圖4-19 網(wǎng)上購物流程圖</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ǎng)站的其它網(wǎng)頁。</p><p>  1.用戶注冊(cè)包括:登錄名稱,真實(shí)姓名,設(shè)

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

94、,如果無誤的話用戶可以直接進(jìn)入網(wǎng)站的其它頁面進(jìn)行瀏覽和訂購,如圖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ù)庫取出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中取出購物車信息 在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 購物車模塊 </p><p>  購物車保存用戶選擇的商品,顯示名稱價(jià)格,總價(jià)等信息,其中用戶可以修改購買數(shù)量,可以刪除已選的商品,可以提交購物車,也可以清空購物車,同時(shí)也可以繼續(xù)購買。</p><p

108、>  圖5-5 購物車顯示</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>  //通過貨物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>  //顯示購物車</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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論